python3+osgeo处理高分影像初探

之前用IDL写高分预处理的时候,就有想过可不可以用python+GDAL写,可是一直卡在了第一步的正射校正,gdal.Warp()函数始终找不到放DEM的位置,最近终于找到了。我尝试了一景1.3G的GF1/WFV,采用ENVI/IDL的脚本运行每次都需要500s以上,而python3+osgeo则稳定在惊人的15s以内!就速度而言,python3+osgeo远远快于ENVI接口。

以下是今天写的简单的代码,包括解压函数,正射校正函数和融合函数(GDAL的融合方法只有默认的加权brovey变换)。运行了一景GF6/PMS,并和IDL版白鸽的结果作了简单对比。

import sys, os, tarfile, tempfile as tmp
from osgeo import gdal, osr
from gdalconst import *

def unpackage(fn):
  dirname, basename = os.path.split(fn)
  odir = os.path.join(dirname, 'snowyDove_' + basename[0:-7])
  with tarfile.open(fn) as file:
    file.extractall(path = odir)
  return odir

def ortho(ifn, demfn, res, ofn):
  ds = gdal.Open(ifn, GA_ReadOnly)
  isNorth = 1 if os.path.basename(ifn).split('_')[3][0] == 'N' else 0
  zone = str(int(float(os
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值