ArcMap中构建金字塔详解

1.金字塔

1.1 定义

金字塔可用于改善性能。它们是原始栅格数据集的缩减采样版本,可包含多个缩减采样图层。金字塔的各个连续图层均以 2:1 的比例进行缩减采样。如下图所示。从金字塔的底层开始每四个相邻的像素经过重采样生成一个新的像素,依此重复进行,直到金字塔的顶层。重采样的方法一般有以下三种: 双线性插值(BILINEAR)、最临近像元法(NEAREST)、三次卷积法(CUBIC)。其中最临近像元法速度最快,如果对图像的边缘要求不是很高,最适合使用该方法。三次卷积由于考虑的参考点数太多、运算较复杂等原因,速度最慢,但是重采样后图像的灰度效果较好。
在这里插入图片描述

1.2 作用

金字塔通过仅检索使用指定分辨率(取决于显示要求)的数据,可以加快栅格数据的显示速度。利用金字塔,可在绘制整个数据集时快速显示较低分辨率的数据副本。而随着放大操作的进行,各个更精细的分辨率等级将逐渐得到绘制;但性能将保持不变,因为您在连续绘制更小的各个区域。数据库服务器会根据用户的显示比例自动选择最适合的金字塔等级。如果不使用金字塔 (pyramid),则必须从磁盘中读取整个数据集,然后将其重采样为更小的大小。这便称为“显示重采样”,发生在刷新 ArcGIS 显示内容时。

每个栅格数据集只需构建一次金字塔,之后每次查看栅格数据集时都会访问这些金字塔。栅格数据集越大,创建金字塔集所花费的时间就越长。但是,这也就意味着可以为将来节省更多的时间。

尽管无法为栅格目录构建金字塔,但是可以为栅格目录中的每个栅格数据集构建金字塔。镶嵌数据集与栅格目录类似。您可以为镶嵌数据集中的每个栅格数据集构建金字塔;而为镶嵌数据集构建金字塔时只能使用镶嵌数据集工具集中的特定工具。

2.构建方法

2.1单景影像金字塔构建

ArcToolbox->Data ManagementTools->Raster->Raster Properties->Build Pyramids

对于尚未构建金字塔的单景影像,在影像添加至ArcMap窗口时,会得到“是否构建金字塔”的提示,这个时候也可以选择构建金字塔。
在这里插入图片描述

2.2批量影像金字塔构建

ArcToolbox->Data ManagementTools->Raster->Raster Properties-> Build Pyramids And Statistics

对于数据量比较大的影像,推荐利用批量工具进行金字塔构建
在这里插入图片描述

或者ArcToolbox->Data ManagementTools->Raster->Raster Properties-> Batch Build Pyramids
3 提速金字塔构建

金字塔构建过程中有几个可设的参数,它们正是提速金字塔构建的秘密所在。如上图所示

(1)金字塔级别 Pyramidlevels (optional)

金字塔等级是指建立的金字塔层级数量。默认的级别是-1,此时会构建完整的影像金字塔。如果这里设成空值,得到的效果和-1相同。

如果设为0,那么将不会建立金字塔。同时,这也是删除影像金字塔的方法。

金字塔最高级别可以设为29,任何高于29的值都会当作-1处理。

如果按照默认的设置,完整的构建出影像金字塔,耗费的时间一定会较长,所以可以根据需要进行金字塔级别设置。

(2)重采样方法 Pyramidresampling technique (optional)

重采样的方法一般有以下三种: 双线性插值(BILINEAR)、最临近像元法(NEAREST)、三次卷积法(CUBIC)。其中最临近像元法速度最快,如果对图像的边缘要求不是很高,最适合使用该方法。三次卷积由于考虑的参考点数太多、运算较复杂等原因,速度最慢,但是重采样后图像的灰度效果较好。

对于影像,建议采用双线性差值法;对于离散数据,建议采用最邻近像元法。

(3)压缩方式 Pyramidcompression type (optional)

提供了5种压缩方式:

默认——如果源数据采用了小波压缩,金字塔将采用JPEG的压缩方法;否则,则采用LZ77的压缩方法。
LZ77——无损压缩方式,适合于任何类型的数据。
JPEG——有损压缩方式,选择了JPEG压缩,可以设置压缩质量。对于影像数据,通常选择此种压缩方式,如果对影像质量要求不高,可以将压缩比设置为25。
JPEG_YCbCr——种有损压缩,使用亮度(Y)和色度( Cb和Cr )色彩空间组件。
NONE——不对金字塔进行压缩。

(4) 设置环境变量 Parallel Processing Factor

我们的电脑都是多核的,通过环境变量的并行处理因子设置可以提升GP工具处理速度。

具体设置位置:GP工具面板——>Environments——>ParallelProcessing

在这里插入图片描述

并行处理因子以数字或者百分数的形式进行设置。如果以百分数的形式设置,最终的进程数将是电脑CPU核数与百分比相乘的结果或近似结果。比如说,4核的电脑。

  • 如果设置为50%,那么将启用2个进程。(50% * 4 = 2)
  • 如果设置为66%,那么将启用3个进程。(66% * 4 = 2.64,近似为3)
  • 如果设置为100%,那么将启用4个进程。(100% * 4 = 4)

当然,也可以直接进行数值设置。

  • 空值——默认设置,不同的工具会进行不同进程数的设置。
  • 0——不进行并行设置。
  • n——指定具体进程数,进程数设置不超过CPU核数。

4.删除构建

删除金字塔文件。Img格式为最常见的影像格式,影像数据小于2G时,img存储影像,rrd是生成的影像金字塔文件;当影像数据大于2G时,img就变成索引文件,arcmap产生ige的影像格式存储栅格数据,rrd是生成的影像金字塔文件,当金字塔文件(rrd)超过2GB时,又会创建rde文件来存储金字塔。所以,重建金字塔时,需要删除rrd和rde文件。为了防止重建金字塔失败,可以先把数据备份一下。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/212647.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C#winform上下班打卡系统Demo

C# winform上下班打卡系统Demo 系统效果如图所示 7个label控件(lblUsername、lblLoggedInEmployeeId、lab_IP、lblCheckOutTime、lblCheckInTime、lab_starttime、lab_endtime)、3个按钮、1个dataGridView控件、2个groupBox控件 C#代码实现 using System; using System.Dat…

【分布式微服务专题】从单体到分布式(二、SpringCloud整合Nacos)

目录 前言阅读对象阅读导航前置知识笔记正文一、下载安装二、项目整合2.1 服务注册与发现2.2 动态配置管理 三、其他实验四、服务之间的调用 学习总结感谢 前言 本篇笔记主要是记录我整合Nacos项目进来的过程。以实现服务注册发现,以及分布式配置管理。关于Nacos&a…

友思特分享 | Neuro-T:零代码自动深度学习训练平台

工业自动化、智能化浪潮涌进,视觉技术在其中扮演了至关重要的角色。在汽车、制造业、医药、芯片、食品等行业,基于视觉技术实现的缺陷检测具有非常大的需求。对于传统检测方法,目视检查方法能够有效检测非标、具有挑战性的缺陷,传…

在线教育小程序如何一键生成App

在线教育行业是指通过互联网平台提供的各种教育和培训服务。这不仅包括传统的课程学习,还涵盖了一系列创新的学习模式。例如,同步在线课程允许学生和教师在同一时间在线,通过实时的视频和聊天工具进行互动。而异步在线课程则为学生提供了更大…

2023年5个自动化EDA库推荐

EDA或探索性数据分析是一项耗时的工作,但是由于EDA是不可避免的,所以Python出现了很多自动化库来减少执行分析所需的时间。EDA的主要目标不是制作花哨的图形或创建彩色的图形,而是获得对数据集的理解,并获得对变量之间的分布和相关…

【Ambari】Python调用Rest API 获取YARN HA状态信息并发送钉钉告警

🦄 个人主页——🎐开着拖拉机回家_Linux,大数据运维-CSDN博客 🎐✨🍁 🪁🍁🪁🍁🪁🍁🪁🍁 🪁🍁🪁&am…

Java项目学生管理系统一前后端环境搭建

在现代的软件开发中,学生管理系统是一个常见的应用场景。通过学生管理系统,学校能够方便地管理学生的信息、课程安排和成绩等数据。本文将介绍如何使用Java语言搭建一个学生管理系统的前后端环境,并提供一个简单的示例。 1.环境搭建 学生管…

web:[GXYCTF2019]BabyUpload(文件上传、一句话木马、文件过滤)

题目 页面显示为文件上传 随便上传一个文件看看 上传一个文本文件显示 上传了一个图片显示 上传包含一句话木马的图片 上传了一个包含php一句话木马的文件,显示如上 换一个写法 上传成功 尝试上传.htaccess,上传失败,用抓包修改文件后缀 …

No suitable driver found for jdbc:mysql://localhost:3306(2023/12/7更新)

有两种情况: 压根没安装下载了但没设为库或方法不对 大多数为第一种情况: 一. 下载jdbc 打开网址选择一个版本进行下载 https://nowjava.com/jar/version/mysql/mysql-connector-java.html 二.安装jdbc 在项目里建一个lib文件夹 在把之前下载的jar文…

【Vulnhub 靶场】【Funbox: GaoKao】【简单】【20210606】

1、环境介绍 靶场介绍:https://www.vulnhub.com/entry/funbox-gaokao,707/ 靶场下载:https://download.vulnhub.com/funbox/FunboxGaoKao.ova 靶场难度:简单 发布日期:2021年06月06日 文件大小:1.3 GB 靶场作者&#…

Linux 多进程并发设计-进程对核的亲缘设置

1设计结构 2 设计优点 1 充分利用多核系统的并发处理能力2 负载均衡3 职责明确&#xff0c;管理进程仅负责管理&#xff0c;工作进程仅负责处理业务逻辑 3 演示代码: //main.cpp #define _GNU_SOURCE #include<sys/types.h> #include<sys/wait.h> #include <…

智能优化算法应用:基于金枪鱼群算法无线传感器网络(WSN)覆盖优化 - 附代码

智能优化算法应用&#xff1a;基于金枪鱼群算法无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用&#xff1a;基于金枪鱼群算法无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.金枪鱼群算法4.实验参数设定5.算法结果6.参考…

代码混淆技术探究与工具选择

代码混淆技术探究与工具选择 引言 在软件开发中&#xff0c;保护程序代码的安全性是至关重要的一环。代码混淆&#xff08;Obfuscated code&#xff09;作为一种常见的保护手段&#xff0c;通过将代码转换成难以理解的形式来提升应用被逆向破解的难度。本文将介绍代码混淆的概…

JAVA后端自学技能实操合集

JAVA后端自学技能实操 内容将会持续更新中,有需要添加什么内容可以再评论区留言,大家一起学习FastDFS使用docker安装FastDFS(linux)集成到springboot项目中 内容将会持续更新中,有需要添加什么内容可以再评论区留言,大家一起学习 FastDFS 组名&#xff1a;文件上传后所在的 st…

配置集群免密登录

文章目录 前言配置集群免密登录1. 设置主机名与 IP 地址的映射关系2. 生成 SSH 密钥对3. 将公钥复制到集群节点4. 测试免密登录5. 配置节点之间互相免密登录 总结 前言 本文介绍了如何配置集群之间免密登录&#xff0c;以便在搭建集群环境时方便地进行节点之间的通信。通过设置…

分布式搜索引擎elasticsearch(二)

1.DSL查询文档 elasticsearch的查询依然是基于JSON风格的DSL来实现的。 1.1.DSL查询分类 Elasticsearch提供了基于JSON的DSL(Domain Specific Language)来定义查询。常见的查询类型包括: 查询所有:查询出所有数据,一般测试用。例如:match_all 全文检索(full text)查…

编程过程中出现bug如何应对?

编程过程中出现bug如何应对&#xff1f; 1.找错误原因 如果完全不知道出错的原因&#xff0c;或者说存在着很多错误的有原因&#xff0c;----》控制变量法 例如&#xff0c;昨天我在使用torchrun 多卡并行一个程序的时候&#xff0c;出现了大量的bug, 于是我将报错信息放在网…

UDP实现群聊

代码&#xff1a; import java.awt.*; import java.awt.event.*; import javax.swing.*; import java.net.*; import java.io.IOException; import java.lang.String;public class liaotian extends JFrame{private static final int DEFAULT_PORT8899;private JLabel stateLB…

Kubernetes(K8s 1.27.x) 快速上手+实践,无废话纯享版(视频笔记)

视频源&#xff1a;1.03-k8s是什么&#xff1f;_哔哩哔哩_bilibili 1 基础知识 1.1 K8s 有用么&#xff1f; K8s有没有用 K8s要不要学&#xff1f; 参考资料: https://www.infoq.com/articles/devops-and-cloud-trends-2022/?itm_sourcearticles_about_InfoQ-trends-report…

Javascript 函数介绍

Javascript 函数介绍 很多教程书一上来就讲解一堆语法&#xff0c;例如函数定义、函数调用什么。等读者看完了函数这一章都没搞懂什么是函数。 在讲解什么叫函数之前&#xff0c;我们先看下面一段代码&#xff1a; <!DOCTYPE html> <html xmlns"http://www.w3.…