Esri OptimizeRasters是一个高效、可配置的开源工具包。

OptimizeRasters提供了以下功能:

  • 影像格式转换和压缩。支持输出优化栅格格式:MRF、分块TIFF、云存储优化GeoTIFF。
  • 在云存储(例如Amazon S3、微软Azure、Google云存储)和本地企业存储系统之间传输栅格影像。
  • 创建本地代理文件,引用存储在云存储或者企业存储系统中的栅格影像,提升影像访问速度。

使用OptimizeRasters工具包的好处:

  • 流程化的数据管理。
  • 更快的读取速度
  • 简化云存储的数据上传和下载步骤
  • 降低对存储系统的要求

OptimizeRaster工具包包含的工具:

  • OptimizeRasters Tool 用于转换栅格影像格式,传输影像和创建本地代理。
  • Profile Editor Tool 用于编辑Amazon S3和微软Azure云存储的配置文件。
  • Resume Jobs Tool 用于查询未完成的作业,并允许用户继续作业。

目前转换输出支持的格式包括:

  • 分块TIFF,有别于数据供应商提供的常规TIFF格式,通过内部分块机制,减少了数据访问时需要的磁盘读取次数。同时提供可选的JPEG和LZW压缩算法,有效减少文件大小。
  • 云存储优化GeoTIFF,和分块TIFF类似,包含金字塔,并且文件组织针对Http请求进行优化。性能和分块TIFF差不多。
  • MRF是NASA发明的用于高效存储和读取的分块栅格格式。可选使用LERC压缩算法,有效节省存储空间,同时提供较快的压缩和解压速度。

OptimizeRaster能同步转换和上传栅格影像到云存储或企业存储系统,同时会进行各项检查,以确保数据被成功转换或上传,通过外部的日志功能记录失败的记录以及作业的进度,能断点转换和续传。

OptimizeRaster创建的本地代理文件相当于一个指针,包含所指引的原始栅格影像文件的元数据信息以及指引路径。本地代理文件同时也能启用本地缓存功能,基于所指引的原始文件在本地构建MRF格式的副本,以加快访问速度。

下载地址

https://github.com/Esri/OptimizeRasters/raw/master/Setup/OptimizeRastersToolsSetup.exe

运行环境

ArcGIS Map 10.4.1+或者ArcGIS 1.3+

OptimizeRaster工具包针对不同数据格式转换场景提供了以下预置配置文件:

Airbus_SatelliteProduct_to_MRF_LERC

空中客车的卫星数据转到到MRF(采用LERC压缩)

CopyFilesOnly

仅仅复制数据,不转换格式和创建本地代理。

CreateRasterProxy.xml

创建本地代理文件。

DG_SatelliteProduct_to_MRF_LERC

DG的卫星数据转到到MRF(采用LERC压缩)

Grid_to_COG_LZW

Grid转换为云优化格式

Grid_to_MRF_LERC

Grid转换为MRF格式(采用LERC压缩)

Imagery_to_COG_DEF.

常见影像格式转换为云优化格式

Imagery_to_COG_JPEG

常见影像格式转换为云优化格式

Imagery_to_MRF_JPEG

常见影像格式转换为MRF格式(采用JPEG压缩)

Imagery_to_MRF_LERC

常见影像格式转换为MRF格式(采用LERC压缩)

Imagery_to_TIF_JPEG

常见影像格式转换为TIFF格式(采用JPEG压缩)

Imagery_to_TIF_LZW

常见影像格式转换为TIFF格式(采用LZW压缩)

Landsat_to_MRF_LERC

Landsat数转换为MRF格式(采用LERC压缩)

Landsat8_RasterProxy

Landsat8数据转换为MRF格式(采用LERC压缩)

Overviews_to_MRF_JPEG

概视图转换为MRF格式(采用JPEG压缩)

Overviews_to_MRF_LERC

概视图转换为MRF格式(采用LERC压缩)

Sentinel2_to_MRF

哨兵2数据转换为MRF格式

上述配置文件模板均为XML文件,假如需要定制自己的转换配置参数,可以在基于上述模板的基础上进行参数微调。

使用模式

在ArcMap中使用

把OptimizeRasters.pyt作为Python工具箱添加到ArcMap的ArcToolbox中。

在ArcGIS pro上使用

访问主菜单插入,工具箱。把OptimizeRasters.pyt作为Python工具箱添加到当前工程中。

假如需要调整配置参数,可点击上述界面中的Advanced按钮。

通过命令行调用。

python.exe <OptimizeRaster.py文件的完整路径> -input=<需要转换的数据所在目录> -out=<输出目录> -mode=<输出格式>

参数说明

参数

说明

是否必须

-config

配置文件的路径

-mode

输出格式,选项包括:

l  mrf

l  tif

l  tif_cog

l  rasterproxy

-cache

本地代理文件的存放路径

-quality

JPEG的压缩率

-prec

LERC的压缩率,默认整形数据为0.5,浮点数据为0.0001

-pyramids

是否构建金字塔,选择包括:

l  1

l  0

l  external

-rasterproxypath

本地代理文件的存放路径

影像优化 OptimizeRaster工具包介绍的更多相关文章

  1. 【转】【PNG压缩工具】PNG 图像的优化及压缩工具介绍

    图像格式有许多种不同类型,在互联网上最常见的有JPEG.GIF.BMP.TIFF和PNG.每一种图像格式都有它自己的用途,比如GIF是用于动画的,JPEG是用于高清图片的,这种图片在保存或者调整大小后 ...

  2. 网站性能优化— WebP 全方位介绍

    谈到优化网站性能时,主要目标之一就是减少要发送到浏览器的数据量(即 payload).而当前,图片通常是页面构成中最耗费流量的部分,因此降低图片的大小是一个最为有效的优化网页前端性能的办法. 有很多工 ...

  3. WEB开发性能优化--核心定义介绍篇(1)

    推荐理由 随着 互联网的蓬勃发展,并且伴随着产品功能的越来越复杂,对于技术人员来说最大的挑战就是如何在保证业务快速发展的同时,也可保证不断复杂的业务对用户体验的影响,其中对用户来说最重要的体验指标是如 ...

  4. PLSQL_性能优化索引Index介绍(概念)

    2014-06-01 BaoXinjian

  5. 爬虫开发python工具包介绍 (2)

    本文来自网易云社区 作者:王涛 可选参数我们一一介绍一下: 参数 释义 示例 params 生成url中?号后面的查询Key=value 示例1: >>>payload = {'ke ...

  6. 爬虫开发python工具包介绍 (1)

    本文来自网易云社区 作者:王涛 本文大纲: 简易介绍今天要讲解的两个爬虫开发的python库 详细介绍 requests库及函数中的各个参数 详细介绍 tornado 中的httpcilent的应用 ...

  7. Python之数据分析工具包介绍以及安装【入门必学】

    前言本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 首先我们来看 Mac版 按照需求大家依次安装,如果你还没学到数据分析,建议你 ...

  8. L2R 三:常用工具包介绍之 XGBoost与LightGBM

    L2R最常用的包就是XGBoost 和LightGBM,xgboost因为其性能及快速处理能力,在机器学习比赛中成为常用的开源工具包, 2016年微软开源了旗下的lightgbm(插句题外话:微软的人 ...

  9. Linux 首先基本包安装(vim啊什么的),源,源优化,项目架构介绍, (LNMuWsgi)Django项目相关软件mysql,redies,python(相关模块)安装配置测试

    内容 补充: 查看已启动服务的端口 netstat -tulnp |grep (方式1) ss -tulnp|grep (方式2) 前期铺垫: . Linux要能上网 . 掌握Linux软件包安装方法 ...

随机推荐

  1. 关于Python中的可变对象与不可变对象的区别(转)

    转自:https://blog.csdn.net/rookinzhang/article/details/80259857 Python中可变对象和不可变对象:https://www.cnblogs. ...

  2. Web SSH远程连接利器:gotty

    Web SSH远程连接利器:gotty 这个东东能让你使用浏览器连接你远程的机器! 一. 环境准备 下载https://github.com/yudai/gotty. 请先配置好 Golang 环境, ...

  3. 使用jQuery开发dialog对话框插件

    1.插件使用 首先引入 jquery 库,然后引入 dialog.js.dialog.css,如下: <script type="text/javascript" src=& ...

  4. python取字母以及数字随机数

    一.这里用到了:String模块ascii_letters和digits ''.join(random.sample(string.ascii_letters + string.digits, 9)) ...

  5. JavaScript内置一些方法的实现原理--new关键字,call/apply/bind方法--实现

    先学习下new操作符吧 new关键字调用函数的心路历程: 1.创建一个新对象 2.将函数的作用域赋给新对象(this就指向这个对象) 3.执行函数中的代码 4.返回这个对象 根据这个的思路,来实现一个 ...

  6. Android 低功耗蓝牙BLE 开发注意事项

    基本概念和问题 1.蓝牙设计范式? 当手机通过扫描低功耗蓝牙设备并连接上后,手机与蓝牙设备构成了客户端-服务端架构.手机通过连接蓝牙设备,可以读取蓝牙设备上的信息.手机就是客户端,蓝牙设备是服务端. ...

  7. 用户在浏览器输入URL回车之后,浏览器都做了什么

    在直接列出执行的步骤之前先来普及几个知识,相信了解完这些知识之后会对前后端的交互有更深入的理解. 1.TCP连接 TCP:Transmission Control Protocol, 传输控制协议,是 ...

  8. python 内建属性

    在python中创建一个类,它不仅有我们自定义的属性和方法,还有与生俱来的一些属性和方法,我们叫它内建属性. 下面是类常用内建属性列表. 常用专有属性 说明 触发方式 __init__ 构造初始化函数 ...

  9. go工程组织规范

    go编码以workspace形式管理,一个workspace包含所有的Go编码,包含多个版本控制仓库(例如使用git管理的多个仓库).每个仓库包含多个包package,每个package是一个单独的路 ...

  10. 使用Cloudera Manager搭建Kudu环境

    使用Cloudera Manager搭建Kudu环境 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 1>.点击添加服务进入CM服务安装向导 2>.选择需要安装的kudu ...