当前位置: 首页 > news >正文

ENVI无缝镶嵌Seamless Mosaic工具镶嵌、拼接栅格遥感影像(所有图像需要含有地理信息)

本文介绍基于ENVI软件,利用“Seamless Mosaic”工具实现栅格遥感影像无缝镶嵌的操作。

ENVI软件中通过“Pixel Based Mosaicking”工具实现栅格遥感影像的镶嵌的方法。这一工具虽然可以对不含有地理参考信息的遥感影像进行镶嵌,但是其镶嵌的整体效果并不如“Seamless Mosaic”工具的效果。因此,本文就对基于“Seamless Mosaic”工具的栅格遥感影像镶嵌操作进行介绍。

首先,我们先来看一下本文需要实现的需求。现有以下两景遥感影像,二者均含有地理参考信息,如下图所示;这里我们再强调一下:如果待镶嵌的遥感影像中至少一景不含有地理参考信息,那么就无法使用“Seamless Mosaic”工具进行镶嵌。

而我们需要做的,就是对这两景遥感影像进行镶嵌。

明确了具体需求,接下来就可以开始镶嵌操作。首先,我们在ENVI软件中打开对应的两景遥感影像;随后,在工具箱中依次选择“Mosaicking”→“Seamless Mosaic”。

随后,将弹出如下所示的“Seamless Mosaic”工具窗口。

点击上图左上角的绿色加号,导入我们需要进行镶嵌的遥感影像。

导入数据完毕后,我们开始镶嵌参数的配置。这里提一句,镶嵌过程中大家最好始终勾选“Seamless Mosaic”工具窗口右上角的“Show Preview”选项,这样可以让我们时刻对镶嵌结果图像有一个初步的预览。

首先,在“Main”面板的“Data Ignore Value”选项中,填写两景遥感影像重叠区域的背景值(NoData值)。如下图所示,我们可以利用Crosshairs功能、Cursor Value功能获取重叠区域背景处像元的数值。

接下来,在“Color Matching Action”选项中,我们需要选择镶嵌后结果图像的颜色匹配基准图像。一般的,我们将导入“Seamless Mosaic”工具的任意一景遥感影像作为基准图像(即选择“Reference”),将其余所有图像作为待校正图像(即选择“Adjust”)即可。随后,在“Feathering Distance (Pixels)”选项中,配置接边线羽化的范围。

接下来,进入“Color Correction”面板,选中“Histogram Matching”,即开启直方图匹配,并选择是依据待镶嵌遥感影像的所有区域还是重叠区域作为直方图匹配的范围。

接下来,我们点击“Seamlines”选项;如下图所示。

此时,在待镶嵌遥感影像中可以看到软件自动生成了一条绿色的接边线;如下图所示。

系统生成接边线的操作是自动的,因此难免会出现接边线不理想的情况。我们可以选择“Start editing seamlines”选项,对系统生成的接边线进行修改。

修改接边线的方式也非常简单,我们只需要用鼠标在新接边线的路径上不断点击,从而画出新的接边线。

对某一段新的接边线绘制完毕后,双击鼠标左键,或右键选择“Accept Polygon”选项,即可完成这一段接边线的编辑。

例如,在上图中我绘制完毕后,右键选择“Accept Polygon”选项,可以看到接边线在这里就是沿着我画的新的范围来生成的。

这里有一个非常关键的部分——大家在对接边线进行绘制的过程中,一定要确保你开始绘制的第一个点结束绘制的最后一个点,需要在原有接边线的同一侧。如下图所示,我开始和结束的两个点(两个黄色方框内的点)都是在原有绿色接边线的左侧的。

只有这个样子,才可以让新生成的接边线按照我们画好的路径生成;如下图所示。否则结束绘制后,会发现接边线没有发生任何变化,依然是系统默认的那个样子。

关于接边线的修改,如果大家还是不明白,可以查看这个动图。这里要非常感谢旧哥友情提供的动图~

接边线修改完毕后,如下图所示。可以看到我已经将原本笔直的接边线,按照成像区域的水体边界、道路等进行了修改;这样子镶嵌结果就会比较统一,不会明显地看到接边线的痕迹。

绘制完毕接边线后,我们可以选择“Save Seam Polygons”选项,对绘制好的接边线进行保存。

在弹出的窗口中输入接边线的保存路径与名称即可。

在今后,如果我们还想用这个保存好的接边线,就可以通过“Restore Seam Polygons”选项,导入之前保存好的接边线文件。

完成以上对接边线的操作后,我们进入“Seamlinse/Feathering”面板。在其中,我们选中“Apply Seamlines”选项,并对“Feathering”选项进行配置,从而调整镶嵌图像的接边线羽化设置。

最后,我们进入“Export”选项,对镶嵌结果图像的保存路径与名称进行设置;此外,还可以对结果图像的背景值、重采样方法与输出波段进行选择。这里的重采样方法,也就是“Resampling Method”选项,一般选择三次卷积即可。

随后,点击“Finish”。稍等片刻,就可以看到我们镶嵌好的结果图像了。

观察结果图像,可以发现我们几乎很难找到接边线的痕迹。这就是“Seamless Mosaic”工具实现栅格遥感影像无缝镶嵌的优势所在。

参考:参考文献链接

相关文章:

ENVI无缝镶嵌Seamless Mosaic工具镶嵌、拼接栅格遥感影像(所有图像需要含有地理信息)

本文介绍基于ENVI软件,利用“Seamless Mosaic”工具实现栅格遥感影像无缝镶嵌的操作。 在ENVI软件中通过“Pixel Based Mosaicking”工具实现栅格遥感影像的镶嵌的方法。这一工具虽然可以对不含有地理参考信息的遥感影像进行镶嵌,但是其镶嵌的整体效果并…...

Java-API简析_java.lang.Integer类(基于JDK1.8)(浅析源码)

【版权声明】未经博主同意,谢绝转载!(请尊重原创,博主保留追究权) https://blog.csdn.net/m0_69908381/article/details/130730986 出自【进步*于辰的博客】 其实我的【Java-API】专栏内的博文对大家来说意义是不大的。…...

WebSocket的那些事(3-STOMP实操篇)

目录 一、序言二、STOMP详解1、STOMP简单介绍2、STOMP协议内容3、使用STOMP的好处 三、代码示例1、Maven依赖2、开启WebSocket消息代理3、控制器4、前端页面greeting.html 四、测试1、连接服务端2、发送消息 五、STOMP消息传播流程六、结语 一、序言 上节中我们在 WebSocket的…...

《花雕学AI》WeTab+ChatGPT:让浏览器变成你的智能助手

引言: 浏览器是我们日常使用的最重要的工具之一,它可以帮助我们获取信息、娱乐、学习、工作等。但是,传统的浏览器往往不能满足我们的个性化需求,也不能给我们提供智能化的服务。那么,有没有一种浏览器可以让我们的体…...

MySQL 字段为 NULL 的5大坑,大部分人踩过

数据库字段允许空值(null)的问题,小伙伴你遇到过吗? 在验证问题之前,我们先建一张测试表及测试数据。 构建的测试数据,如下图所示: 有了上面的表及数据之后,我们就来看当列中存在 NULL 值时,究…...

Android SystemUI篇(二)

目录 一、简介 二、SystemUI的架构 三、SystemUI的主要组件 四、SystemUI的主要功能 五、SystemUI的自定义和定制 六、SystemUI的性能优化 一、简介 SystemUI是Android操作系统的一个关键组件,主要负责管理和提供用户界面的核心元素,如状态栏、导航…...

第六讲:“声音”写具体

爸爸又打呼了!“呼噜一呼噜一像一股巨浪腾空而起,以每秒八十米的速度向上冲刺,力图掀开天花板,掀翻整座住宅楼;“呼噜一一呼噜一-”,像一台轰鸣的坦克在穿行,床垫在抖动,吊灯在摇晃,墙灰在簌籁(…...

Unity 向量

向量的加减法本文就不再赘述了,本文侧重介绍脚本中的向量写法 一、向量的数乘 定义:k(x,y,z)(kx,ky,kz) 若向量长度为L,k取1/L,就恰好能让原向量长度变成1,变成了单位向量,这称为向量的标准化 。 由于长度…...

Apache Tomcat AJP协议文件读取与包含

永远也不要忘记能够笑的坚强,就算受伤,我也从不彷徨。 0x01.漏洞情况分析 Tomcat是Apache软件基金会Jakarta 项目中的一个核心项目,作为目前比较流行的Web应用服务器,深受Java爱好者的喜爱,并得到了部分软件开发商的…...

实验10 人工神经网络(1)

1. 实验目的 ①理解并掌握误差反向传播算法; ②能够使用单层和多层神经网络,完成多分类任务; ③了解常用的激活函数。 2. 实验内容 ①设计单层和多层神经网络结构,并使用TensorFlow建立模型,完成多分类任务&#xf…...

OPPO关停哲库业务,工程师造芯何去何从?

5月12日(上周五),新浪科技从OPPO处了解到,OPPO将终止ZEKU业务。3000多人团队突然原地解散,网上唏嘘声一片! ZEKU最初成立于2019年,是OPPO的全资子公司,欧加集团百分之百注资成立。总…...

面试被问麻了....

前几天组了一个软件测试面试的群,没想到效果直接拉满,看来大家对面试这块的需求还是挺迫切的。昨天我就看到群友们发的一些面经,感觉非常有参考价值,于是我就问他还有没有。 结果他给我整理了一份非常硬核的面筋,打开…...

AspNetCore中的配置文件详解

1 配置文件 程序开发中,有些信息是要根据环境改变的,比如开发环境的数据库可能是本地数据,而生产环境下需要连接生产数据库,我们需要把这些信息放到程序外面,在程序运行时通过读取这些外部信息实现不改变程序代码适应…...

实时更新天气微信小程序开发

1.新建一个天气weather项目 2.在app.json中创建一个路由页面 当我们点击保存的时候,微信小程序会自动的帮我们创建好页面 3.在weather页面上书写我们的骨架 4.此时我们的页面很怪,因为没有给它添加样式和值。此时我们给它一个样式。(样式写在…...

css渐变

线性渐变 liner-gradient属性值用来设置线性渐变,第一个参数值是方向,默认是从上往下,往后就是渐变颜色的种类。 background-image:liner-gradient(方向,颜色1,颜色2...) .box {display: flex;width: 400px;height: …...

《斯坦福数据挖掘教程·第三版》读书笔记(英文版) Chapter 2 MapReduce and the New Software Stack

来源:《斯坦福数据挖掘教程第三版》对应的公开英文书和PPT Chapter 2 MapReduce and the New Software Stack Computing cluster means large collections of commodity hardware, including conventional processors (“compute nodes”) connected by Ethernet …...

HTML零基础快速入门(详细教程)

1&#xff0c;HTML代码特点 <html><head></head><body>hello world!</body> </html>HTML代码有以下特点&#xff1a; html代码是通过标签来组织的&#xff0c;而标签是由尖括号< >组织的&#xff0c;也可被叫作元素&#xff08;ele…...

Kubernetes第5天

第七章 Service详解 本章节主要介绍kubernetes的流量负载组件&#xff1a;Service和Ingress。 Service介绍 ​ 在kubernetes中&#xff0c;pod是应用程序的载体&#xff0c;我们可以通过pod的ip来访问应用程序&#xff0c;但是pod的ip地址不是固定的&#xff0c;这也就意味着…...

RK3568平台开发系列讲解(调试篇)debugfs 分析手段

🚀返回专栏总目录 文章目录 一、enable debugfs二、debugfs API三、使用示例沉淀、分享、成长,让自己和他人都能有所收获!😄 📢Linux 上有一些典型的问题分析手段,从这些基本的分析方法入手,你可以一步步判断出问题根因。这些分析手段,可以简单地归纳为下图: 从这…...

【Spring框架全系列】SpringBoot配置日志文件

&#x1f367;&#x1f367;哈喽&#xff0c;大家好&#xff0c;我是小浪。那么上篇博客我们学习了SpringBoot配置文件的相关操作&#xff0c;本篇博客我们将学习一个新的知识点&#xff0c;SpringBoot日志文件。&#x1f5a5;&#x1f5a5; &#x1f4f2;目录 一、日志是什么…...

label-studio的使用教程(导入本地路径)

文章目录 1. 准备环境2. 脚本启动2.1 Windows2.2 Linux 3. 安装label-studio机器学习后端3.1 pip安装(推荐)3.2 GitHub仓库安装 4. 后端配置4.1 yolo环境4.2 引入后端模型4.3 修改脚本4.4 启动后端 5. 标注工程5.1 创建工程5.2 配置图片路径5.3 配置工程类型标签5.4 配置模型5.…...

day52 ResNet18 CBAM

在深度学习的旅程中&#xff0c;我们不断探索如何提升模型的性能。今天&#xff0c;我将分享我在 ResNet18 模型中插入 CBAM&#xff08;Convolutional Block Attention Module&#xff09;模块&#xff0c;并采用分阶段微调策略的实践过程。通过这个过程&#xff0c;我不仅提升…...

循环冗余码校验CRC码 算法步骤+详细实例计算

通信过程&#xff1a;&#xff08;白话解释&#xff09; 我们将原始待发送的消息称为 M M M&#xff0c;依据发送接收消息双方约定的生成多项式 G ( x ) G(x) G(x)&#xff08;意思就是 G &#xff08; x ) G&#xff08;x) G&#xff08;x) 是已知的&#xff09;&#xff0…...

vue3 字体颜色设置的多种方式

在Vue 3中设置字体颜色可以通过多种方式实现&#xff0c;这取决于你是想在组件内部直接设置&#xff0c;还是在CSS/SCSS/LESS等样式文件中定义。以下是几种常见的方法&#xff1a; 1. 内联样式 你可以直接在模板中使用style绑定来设置字体颜色。 <template><div :s…...

vue3 定时器-定义全局方法 vue+ts

1.创建ts文件 路径&#xff1a;src/utils/timer.ts 完整代码&#xff1a; import { onUnmounted } from vuetype TimerCallback (...args: any[]) > voidexport function useGlobalTimer() {const timers: Map<number, NodeJS.Timeout> new Map()// 创建定时器con…...

保姆级教程:在无网络无显卡的Windows电脑的vscode本地部署deepseek

文章目录 1 前言2 部署流程2.1 准备工作2.2 Ollama2.2.1 使用有网络的电脑下载Ollama2.2.2 安装Ollama&#xff08;有网络的电脑&#xff09;2.2.3 安装Ollama&#xff08;无网络的电脑&#xff09;2.2.4 安装验证2.2.5 修改大模型安装位置2.2.6 下载Deepseek模型 2.3 将deepse…...

PAN/FPN

import torch import torch.nn as nn import torch.nn.functional as F import mathclass LowResQueryHighResKVAttention(nn.Module):"""方案 1: 低分辨率特征 (Query) 查询高分辨率特征 (Key, Value).输出分辨率与低分辨率输入相同。"""def __…...

Python+ZeroMQ实战:智能车辆状态监控与模拟模式自动切换

目录 关键点 技术实现1 技术实现2 摘要&#xff1a; 本文将介绍如何利用Python和ZeroMQ消息队列构建一个智能车辆状态监控系统。系统能够根据时间策略自动切换驾驶模式&#xff08;自动驾驶、人工驾驶、远程驾驶、主动安全&#xff09;&#xff0c;并通过实时消息推送更新车…...

R 语言科研绘图第 55 期 --- 网络图-聚类

在发表科研论文的过程中&#xff0c;科研绘图是必不可少的&#xff0c;一张好看的图形会是文章很大的加分项。 为了便于使用&#xff0c;本系列文章介绍的所有绘图都已收录到了 sciRplot 项目中&#xff0c;获取方式&#xff1a; R 语言科研绘图模板 --- sciRplothttps://mp.…...

BLEU评分:机器翻译质量评估的黄金标准

BLEU评分&#xff1a;机器翻译质量评估的黄金标准 1. 引言 在自然语言处理(NLP)领域&#xff0c;衡量一个机器翻译模型的性能至关重要。BLEU (Bilingual Evaluation Understudy) 作为一种自动化评估指标&#xff0c;自2002年由IBM的Kishore Papineni等人提出以来&#xff0c;…...