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

如何大幅提高遥感影像分辨率(Python+MATLAB)

前言:

算法:NSCT算法(非下采样变换)
数据:Landsat8 OLI 遥感图像数据
编程平台:MATLAB+Python
论文参考:毛克.一种快速的全色和多光谱图像融合算法[J].测绘科学,2016,41(01):151-153+98.DOI:10.16251/j.cnki.1009-2307.2016.01.028.
在这里插入图片描述

             左图:未进行融合的多光谱真彩色合成                              右图:利用NSCT变换后的多光谱真彩色合成

为什么需要混编呢?
其实此算法是完全可以单独利用MATLAB或是Python进行处理的,所以本文的目的不在于编程软件,而在于算法。另外,若是采用MATLAB,可以大大的加快本次算法的速度。

  • (目的一)
  • 通过本次实验:了解MATLAB可以通过mat文件给python传输数据,python也可以向matlab传输数据。互补缺点,可以为以后处理多元化数据加快效率,但是也会导致难度变大。
  • (目的二)
    利用本次算法学习pyhon,在其中也遇到了很多困难,主要的困难还是虚拟内存的问题,一贯的使用matlab编程思维,导致我在用python处理大型矩阵的时候出现了内存不足的情况,这也进一步说明matlab的矩阵处理能力是要明显强于python的。

算法概述

  • (1)上采样低分辨率多光谱图像LRM,使其和全色图像HRP的分辨率相同,记为LRM杠;

  • (2)根据第i个多光谱波段LRMi杠来匹配全色图像得到新的图像HRPi杠;
    在这里插入图片描述
    在这里插入图片描述

  • (3)使用NSCT变换两层分解HRPi杠,得到低频分量和细节子带;

  • 提示 >>>>>
    此处虽然说的是两层分解,但是我找遍了资料,还是不能理解是怎么得出。但是考虑到是低频分量,于是我利用的高斯模糊,方差为20,提取出了全色波段的低频部分。

    在这里插入图片描述

                                          图:全色波段的低频分量
  • (4)提高全色高频信息HF,即
    在这里插入图片描述
  • (5)按比例投影高频信息HF至LRMi杠中,得到融合图像HRMi
    在这里插入图片描述

matlab批量读取遥感影像并将影像矩阵存入.mat文件中:

clc;clear all;
file_path="C:\Users\稳魂\Desktop\data\";
img_path_list = dir(strcat(file_path,'LC08_L1TP_118038_20130525_20170504_01_T1_B*.TIF'));
img_num = length(img_path_list);
fprintf('正在读取的图像为:\n');
data_base={};
name={};
if img_num > 0 for j 

相关文章:

如何大幅提高遥感影像分辨率(Python+MATLAB)

前言: 算法:NSCT算法(非下采样变换) 数据:Landsat8 OLI 遥感图像数据 编程平台:MATLAB+Python 论文参考:毛克.一种快速的全色和多光谱图像融合算法[J].测绘科学,2016,41(01):151-153+98.DOI:10.16251/j.cnki.1009-2307.2016.01.028. 左图:未进行融合的多光谱真彩色合…...

nginx php-fpm安装配置

nginx php-fpm安装配置 nginx本身不能处理PHP,它只是个web服务器,当接收到请求后,如果是php请求,则发给php解释器处理,并把结果返回给客户端。 nginx一般是把请求发fastcgi管理进程处理,fascgi管理进程选…...

通过ip获取地理位置信息

GeoLite2-City.mmdb 文件是 MaxMind 公司提供的一个免费的 IP 地址与城市地理位置映射数据库文件。它包含了 IP 地址范围与对应的城市、地区、国家、经纬度等地理位置信息的映射。这种数据库文件可以用于识别访问您的应用程序或网站的用户的地理位置,从而实现针对不…...

数据库索引优化策略与性能提升实践

文章目录 什么是数据库索引?为什么需要数据库索引优化?数据库索引优化策略实践案例:索引优化带来的性能提升索引优化规则1. 前导模糊查询不适用索引2. 使用IN优于UNION和OR3. 负向条件查询不适用索引4. 联合索引最左前缀原则5. 范围条件查询右…...

【ARM 嵌入式 编译系列 11.1 -- GCC __attribute__((aligned(x)))详细介绍】

文章目录 __attribute__((aligned(x)))详细介绍其它对齐方式上篇文章:ARM 嵌入式 编译系列 11 – GCC attribute((packed))详细介绍 attribute((aligned(x)))详细介绍 __attribute__((aligned(x))) 是 GCC 编译器的一个特性,它可以用于变量或类型,用来指定它们在内存中的…...

【计算机视觉|生成对抗】逐步增长的生成对抗网络(GAN)以提升质量、稳定性和变化

本系列博文为深度学习/计算机视觉论文笔记,转载请注明出处 标题:Progressive Growing of GANs for Improved Quality, Stability, and Variation 链接:[1710.10196] Progressive Growing of GANs for Improved Quality, Stability, and Vari…...

C++11并发与多线程笔记(8) condition_variable、wait、notify_one、notify_all

C11并发与多线程笔记(8) condition_variable、wait、notify_one、notify_all 1、条件变量condition_variable、wait、notify_one、notify_all1.1 std::condition_variable1.2 wait()1.3 notify_one()1.4 notify_all() 2、深入思考 1、条件变量condition_…...

C语言——通讯录详解(动态版)

通讯录详解 前言:一、定义一个通讯录二、初始化三、增加联系人3.1 给通讯录扩容3.2增加联系人 四、释放内存五、完整代码 前言: 我们已经学过了通讯录的静态版,但是它的缺点很明显,通讯录满了就添加不了联系人了啦。我再让通讯录升…...

【云原生】kubernetes应用程序包管理工具Helm

Helm 什么是 Helm 安装 Helm 重要概念 使用 Helm 1 简介 官网地址: Helm Helm是一个Kubernetes应用程序包管理工具,它允许你轻松管理和部署Kubernetes应用程序。Helm通过使用称为Charts的预定义模板来简化Kubernetes应用程序的部署和管理。Chart包含了一组Ku…...

蓝牙资讯|苹果Apple Watch可手势操控Mac和Apple TV等设备

根据美国商标和专利局(USPTO)公示的清单,苹果公司近日获得了一项技术专利,概述了未来的 Apple Watch 手表,使用手势等操控 Mac 和 Apple TV 等设备。 该专利描述未来 Apple Watch 可以交互实现编辑图像、绘图、处理文…...

认识excel篇2之如何快速输入数据

一、快速输入数据(快捷键功能的使用) 1、鼠标左键填充:复制填充、等差序列填充(行、列是一样的) 步骤:选中单元格,鼠标放置到单元格右下角待鼠标箭头变成实心十字架,左键向下拖拽&…...

将eNSP Pro部署在华为云是什么体验

eNSP Pro简介 eNSP Pro 是华为公司数据通信产品线新推出的数通设备模拟器,主要应用在数据通信技能培训,为使用者提供华为数据通信产品设备命令行学习环境。 具备的能力 多产品模拟能力:支持数据通信产品线NE路由器、CE交换机、S交换机、AR…...

Intelij IDEA 配置Tomcat解决Application Server不显示的问题

今天搭建war工程时部署项目发现,IDEA的控制台没有Application Servers,在网上查了一下,总结几个比较好的解决方法,为了方便自己和其他人以后碰到相同的问题,不再浪费时间再次寻找解决办法。 Intelij IDEA 配置Tomcat时…...

php+echarts实现数据可视化实例

效果&#xff1a; 代码&#xff1a; php <?php include(includes/session.inc); include(includes/SQL_CommonFunctions.inc); ?> <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta http-equiv&quo…...

Kotlin~Bridge桥接模式

概念 抽象和现实之间搭建桥梁&#xff0c;分离实现和抽象。 抽象&#xff08;What&#xff09;实现&#xff08;How&#xff09;用户可见系统正常工作的底层代码产品付款方式定义数据类型的类。处理数据存储和检索的类 角色介绍 Abstraction&#xff1a;抽象 定义抽象接口&…...

【ES6】箭头函数和普通函数的区别

它们之间的区别&#xff1a; &#xff08;1&#xff09;箭头函数没有自己的this。 &#xff08;2&#xff09;不可以当作构造函数&#xff0c;不可以对箭头函数使用new命令&#xff0c;否则抛出错误。 &#xff08;3&#xff09;不可以使用arguments对象&#xff0c;该对象在函…...

【网络基础实战之路】VLAN技术在两个网段中的实际应用详解

系列文章传送门&#xff1a; 【网络基础实战之路】设计网络划分的实战详解 【网络基础实战之路】一文弄懂TCP的三次握手与四次断开 【网络基础实战之路】基于MGRE多点协议的实战详解 【网络基础实战之路】基于OSPF协议建立两个MGRE网络的实验详解 【网络基础实战之路】基于…...

密码学学习笔记(十九):密码学关键术语的解释1

数据加密标准(DES) 数据加密标准是使用最广泛的加密体制&#xff0c;它于1977年被美国国家标准和技术研究所(NIST)采纳为联邦信息处理标准FIPS PUB 46。 DES3DESAES明文分组长度&#xff08;位&#xff09;6464128密文分组长度&#xff08;位&#xff09;6464128密钥长度&…...

angular中如何定义一个全局组件?

需求&#xff0c;我们需要新建一个navBreadcrumb的全局组件。这是一个面包屑导航&#xff0c;在不同的页面引入时传入一个路由数组即可。 第一步&#xff1a;我们新建这个组件&#xff1a; ng g c navBreadcrumb ng g m navBreadcrumb----------nav-breadcrumb.module-------…...

HTTP与HTTPS的区别

面试常见问题&#xff0c;HTTPS优化总结易记版&#xff1a; 1、HSTS重定向技术&#xff1a;将http自动转换为https&#xff0c;减少301重定向 2、TLS握手优化&#xff1a;在TLS握手完成前客户端就提前向服务器发送数据 3、会话标识符&#xff1a;服务器记录下与某客户端的会…...

CTF show Web 红包题第六弹

提示 1.不是SQL注入 2.需要找关键源码 思路 进入页面发现是一个登录框&#xff0c;很难让人不联想到SQL注入&#xff0c;但提示都说了不是SQL注入&#xff0c;所以就不往这方面想了 ​ 先查看一下网页源码&#xff0c;发现一段JavaScript代码&#xff0c;有一个关键类ctfs…...

Docker 运行 Kafka 带 SASL 认证教程

Docker 运行 Kafka 带 SASL 认证教程 Docker 运行 Kafka 带 SASL 认证教程一、说明二、环境准备三、编写 Docker Compose 和 jaas文件docker-compose.yml代码说明&#xff1a;server_jaas.conf 四、启动服务五、验证服务六、连接kafka服务七、总结 Docker 运行 Kafka 带 SASL 认…...

鱼香ros docker配置镜像报错:https://registry-1.docker.io/v2/

使用鱼香ros一件安装docker时的https://registry-1.docker.io/v2/问题 一键安装指令 wget http://fishros.com/install -O fishros && . fishros出现问题&#xff1a;docker pull 失败 网络不同&#xff0c;需要使用镜像源 按照如下步骤操作 sudo vi /etc/docker/dae…...

python报错No module named ‘tensorflow.keras‘

是由于不同版本的tensorflow下的keras所在的路径不同&#xff0c;结合所安装的tensorflow的目录结构修改from语句即可。 原语句&#xff1a; from tensorflow.keras.layers import Conv1D, MaxPooling1D, LSTM, Dense 修改后&#xff1a; from tensorflow.python.keras.lay…...

智能AI电话机器人系统的识别能力现状与发展水平

一、引言 随着人工智能技术的飞速发展&#xff0c;AI电话机器人系统已经从简单的自动应答工具演变为具备复杂交互能力的智能助手。这类系统结合了语音识别、自然语言处理、情感计算和机器学习等多项前沿技术&#xff0c;在客户服务、营销推广、信息查询等领域发挥着越来越重要…...

接口自动化测试:HttpRunner基础

相关文档 HttpRunner V3.x中文文档 HttpRunner 用户指南 使用HttpRunner 3.x实现接口自动化测试 HttpRunner介绍 HttpRunner 是一个开源的 API 测试工具&#xff0c;支持 HTTP(S)/HTTP2/WebSocket/RPC 等网络协议&#xff0c;涵盖接口测试、性能测试、数字体验监测等测试类型…...

前端调试HTTP状态码

1xx&#xff08;信息类状态码&#xff09; 这类状态码表示临时响应&#xff0c;需要客户端继续处理请求。 100 Continue 服务器已收到请求的初始部分&#xff0c;客户端应继续发送剩余部分。 2xx&#xff08;成功类状态码&#xff09; 表示请求已成功被服务器接收、理解并处…...

用 Rust 重写 Linux 内核模块实战:迈向安全内核的新篇章

用 Rust 重写 Linux 内核模块实战&#xff1a;迈向安全内核的新篇章 ​​摘要&#xff1a;​​ 操作系统内核的安全性、稳定性至关重要。传统 Linux 内核模块开发长期依赖于 C 语言&#xff0c;受限于 C 语言本身的内存安全和并发安全问题&#xff0c;开发复杂模块极易引入难以…...

Spring是如何实现无代理对象的循环依赖

无代理对象的循环依赖 什么是循环依赖解决方案实现方式测试验证 引入代理对象的影响创建代理对象问题分析 源码见&#xff1a;mini-spring 什么是循环依赖 循环依赖是指在对象创建过程中&#xff0c;两个或多个对象相互依赖&#xff0c;导致创建过程陷入死循环。以下通过一个简…...

解密鸿蒙系统的隐私护城河:从权限动态管控到生物数据加密的全链路防护

摘要 本文以健康管理应用为例&#xff0c;展示鸿蒙系统如何通过细粒度权限控制、动态权限授予、数据隔离和加密存储四大核心机制&#xff0c;实现复杂场景下的用户隐私保护。我们将通过完整的权限请求流程和敏感数据处理代码&#xff0c;演示鸿蒙系统如何平衡功能需求与隐私安…...