arcpy拼接裁剪影像(保留了拼接的数据)

arcpy拼接裁剪影像

主要用的函数

  1. 拼接用到的函数是镶嵌至新栅格的函数arcpy.MosaicToNewRaster_management()
    在这里插入图片描述
    官方api:https://resources.arcgis.com/zh-cn/help/main/10.1/index.html#/na/001700000098000000/
  2. 裁剪用到的函数是按掩膜提取arcpy.gp.ExtractByMask_sa()
    在这里插入图片描述
    官方api:https://resources.arcgis.com/zh-cn/help/main/10.1/index.html#/na/009z0000002n000000/

代码

# encoding:utf-8
import arcpy
import os

arcpy.env.overwriteOutput = True
arcpy.env.workspace = 'D:\\testData\\ganziTest'
# Local variables:
# 拼接结果的文件路径,用于裁剪需要
mosaic_tif = "D:\\testData\\ganzipytest\\mosaic.tif"
# 输出环境
output_location = "D:\\testData\\ganzipytest"
# 裁剪用的shp
testclip_shp = "D:\\testData\\testclip.shp"
# 裁剪结果的栅格数据的位置及文件名
clip_mosaict_tif = "D:\\testData\\ganzipytest\\clip_mosaict.tif"
try:
    # 拼接影像的坐标系
    coordinate_system_for_the_raster = ""
    # 获取文件夹中栅格数据
    rasters = arcpy.ListRasters("*", 'tif')
    # 镶嵌后的栅格数据的名字
    tifName = "mosaic"
    # 拼接栅格数据的字符串保存
    strList = ''
    for i in range(0, len(rasters)):
        strList += rasters[i]
        strList += ";"
    # Process: 镶嵌至新栅格
    # 注意看镶嵌的数据的是否是16位的深度,波段数是否是1,根据自己的数据修改一下
    arcpy.MosaicToNewRaster_management(strList + tifName + '.tif', output_location, "mosaic.tif",
                                       coordinate_system_for_the_raster, "16_BIT_UNSIGNED", "", "1", "LAST", "FIRST")
    print "finished"

    # Process: 按掩膜提取
    arcpy.gp.ExtractByMask_sa(mosaic_tif, testclip_shp, clip_mosaict_tif)
except Exception as e:
    print(e)


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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值