python-arcpy-影像拼接或影像镶嵌

arcpy影像拼接或影像镶嵌

利用arcpy拼接或镶嵌同一目录下的栅格数据集,本次以拼接不同图幅下的dem为例。注意:栅格数据集不能重叠否则输出结果不正确,坐标系最好统一。

  • 实现代码
    由于数据量大,arcpy运行效率低的原因,运行时间可能会长一点
# -*- coding: utf-8 -*-

"""
@File    : arcpy批量镶嵌1.py
@Author  : fungis@163.com
@Time    : 2020/04/16 09:14
@notice  : 运行前最好对栅格数据集进行备份,以免误删数据
"""
import os
import arcpy
from arcpy import env


# 删除拼接后的其他栅格文件
def removeGivenFile(input_file):
    if (os.path.exists(input_file)):
        os.remove(input_file)


env.workspace = r"E:\gisData\test\HenanDEM"  # 输入栅格所在目录
rasters = arcpy.ListRasters('*', raster_type='IMG')  # 如果是TIF影像,改下这个参数:raster_type='TIF'
print ('栅格目录:' + str(rasters))
# 存储所有的栅格文件名
data = []
for raster in rasters:
    data.append(raster)
# 去掉第一个
data2 = data[1:]
# 第一个参数为除去第一个以外的所有栅格,第二个参数为第一个栅格即要合并到的栅格(拼接到第一个栅格中)
if len(data) > 1:
    arcpy.Mosaic_management(data2, data[0])
    print('拼接完成:' + str(env.workspace) + os.sep + str(data[0]))
    # 删除其他拼接前的栅格,只保留拼接后的栅格数据集
    for otherRaster in data2:
        removeGivenFile(str(env.workspace) + os.sep + str(otherRaster))

  • 效果预览
  • 拼接前 ↓
拼接后 ↓
  • 结尾
    喜欢的朋友们可以点个关注,后续将持续更新,精彩无限^ - ^
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值