MATLAB 学习笔记(6)MATLAB 的 upsample 函数和 downsample 函数

2023-10-31

目录

upsample 和 downsample

程序验证

上采样 upsample

下采样 downsample

其他参数设定

总结


 

upsample 和 downsample

upsample 和 downsample 顾名思义就是上采样和下采样,但是在 MATLAB 中代表的含义是什么,用 MATLAB 做个而简单的测验。

以下是 MATLAB 官方对两个函数的解释。

bad0ed413c764d838bd12ea3612591a2.png

d4808c05cb28469d99abde69a91ad212.png

程序验证

上采样 upsample

首先定义一个 1×6 的矩阵 martix_A,并对其 4 倍上采样结果命名为 martix_B。

martix_A = [1 2 3 4 5 6]; martix_B = upsample(martix_A,4);

这是 martix_A 的数据格式

75260239f8e446ccaaa270093fb1b58e.png

martix_A 数据格式

这是 martix_B 的数据格式,这里由于数据太长就没有截全

36cb99bf0c9246bfbb3d7086982ac8f3.png

在工作区可以看出,矩阵 A 为 1×6 的矩阵,而矩阵 B 为 1×24 的矩阵,从上面的表格可以看出,upsample 的功能就是将矩阵中每个数据扩展 4 倍,剩余的 3 个数用 0 填充。

5ba2268c281e4fa78a4a5cd0befd46cb.png

martix_A  和 martix_B 格式

在从具体的图像去分析

下图是原始的 matrix A 的图像,可以看到是一条直线。

5c28f6f64fae408fa7f8c3fd1c583533.png

matrix A 图像

下图是由 matrix A 上采样形成的 matrix B 的图像,可以看到现在的图像不再是连续的,而是断断续续的,但是在每个峰的顶点依次对应的值为 1、2、3、4、5、6,而其余的点值均为 0,和之前矩阵的数值就能对应上了。

7c8e603b510a4b048c51fe8d2b71478a.png

matrix B 图像

理解了上采样 upsample 的含义,对于下采样 downsample 就很好理解了,下采样其实就是上采样的逆操作,上采样将一个点扩展到 4 个点,下采样就是将 4 个点缩小至 1 个点,这里依然用实际的程序解释。

下采样 downsample

对 martix_B 进行 4 倍的下采样操作

martix_C = downsample(martix_B,4);

可以看到,此时的 martix_C 和 martix_A 是一致的。

337c6ef2bf074c01924349ab9e57f2c6.png

数据格式

在数据格式上也是一样。

dbce91880b694c6a9d03ae22b5b2c66d.png

数据格式

在图像是也是和之前原始的图像一致。

db47183137634bc99935965c4322d686.png

matrix C 图像

其他参数设定

除此之外,这两个函数还可以添加另一个参数,phase:相位,这个参数可以更改样本数据的相位。

举个栗子

定义一个矩阵 matrix_D,参数 phase 设定为 2

martix_D = upsample(martix_A,4,2);

此时每个数都向右移了 2 位

a56b2da3a847468da1a63fe82ebdb877.png

matrix D 数据格式

从图像中也可以看出向右偏移了部分距离

0379847ae01b4a1283b672a006442a09.png

matrix D 图像

总结

上采样操作将每个输出数据间插入了 3 个 0,这就相当于将采样时间缩短为原来的 1/4,从频率上看,频率变为原来的 1/4。同时数据长度也变为原来的 4 倍。需要注意的是,4 倍升采样后,功率也变为原来的1/4,可以增加增益等方法处理。上采样的意义通俗的讲就在于增加数据与数据直接的间隙,在调制的时候就可以有效的避免产生混叠,下采样的是上采样的逆操作,理解了上采样,下采样自然就懂了。

 

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

MATLAB 学习笔记(6)MATLAB 的 upsample 函数和 downsample 函数 的相关文章

  • 如何使用Matlab提高PSD的分辨率

    我有音频信号 我用 Matlab 读取该信号 并使用 pwelch 获取其 PSD 这是我正在使用的代码 x Fs audioread audioFile wav x x 1 mono xPSD f pwelch x hamming 512
  • Microsoft Visual C++ 2008 和 R2007b 的 Mex 类型

    我想对 vs2008 和 matlab2007b 使用 mex 类型 我尝试了下面的代码 include
  • 如何选择部分密集数据集的均匀分布子集?

    P是一个 n d 矩阵 持有nd 维样本 P某些地区的密度是其他地区的几倍 我想选择一个子集P其中任意样本对之间的距离大于d0 并且我需要将其传播到整个区域 所有样本都具有相同的优先级 无需优化任何内容 例如覆盖面积或成对距离之和 这是执行
  • 如何读取 10 位原始图像?其中包含 RGB-IR 数据

    我想知道如何从我的 10 位原始 它有 rgb ir 图像数据 数据中提取 RGB 图像 如何使用 Python 或 MATLAB 进行阅读 拍摄时的相机分辨率为 1280x720 室内照片图片下载 https drive google c
  • 将 3d 矩阵重塑为 2d 矩阵

    我有一个 3d 矩阵 n by m by t 在 MATLAB 中表示n by m一段时间内网格中的测量值 我想要一个二维矩阵 其中空间信息消失了 只有n m随着时间的推移测量t剩下 即 n m by t 我怎样才能做到这一点 你需要命令r
  • 将组合字符串和数字输入的元胞数组写入文本文件

    考虑以下 DateTime 2007 01 01 00 00 2007 02 01 00 00 2007 03 01 00 00 Headers Datetime Data Dat 100 200 300 Data DateTime num
  • 如何以编程方式指定 MATLAB 编辑器键绑定

    我想将键盘键绑定设置为Windows 默认设置我想在启动时使用startup m因为我希望在大量系统上设置此设置 首选项对话框中的等效设置是 MATLAB gt Keyboard gt Shortcuts gt Active Setting
  • 类方法的自定义代码完成?

    在 MATLAB 中 可以定义代码建议和完成 如标题为 的文档页面中所述 自定义代码建议和完成 https www mathworks com help matlab matlab prog customize code suggestio
  • 整数的十进制表示形式中的分隔数字

    例如 我想将用户输入作为整数输入 45697 并将前两位数字存储在数组 向量或其他内容中 例如 4 5 6 9 7 这样我就可以使用一些函数调用来检查前两个值 4 5 并对它们进行计算 问题 我不知道如何存储恢复前两个值 有没有简单的函数调
  • 作为动画的八度情节点

    我有以下八度脚本 TOTAL POINTS 100 figure 1 for i 1 TOTAL POINTS randX rand 1 randY rand 1 scatter randX randY hold on endfor 当我运
  • 如何每次使用按钮将数据添加到 MATLAB 中的现有 XLSX 文件?

    我有一个函数可以生成一些变量 例如分数 对 错 未回答 使用按钮调用此功能 问题是如何每次将函数生成的这些值添加 附加到 XLSX 文件中 或者 如何创建 MAT 文件以便可以添加它 可能的解决方案是什么 附加到 xls 文件所涉及的挑战是
  • MATLAB - GUI 和 OPC 服务器

    我想在 MATLAB 中设计一个图形用户界面 可以使用 MATLAB 的过程控制对象链接和嵌入 OPC 工具箱连续读取数据 我怎样才能实现这个 我已经设计了图形用户界面 但我无法将数据读入图形用户界面 就这样做 type opctoolMA
  • 为什么 mex 文件中的 OpenMP 仅产生 1 个线程?

    我是 OpenMP 新手 我有以下代码 使用配置了 MSVS2010 的 Matlab mex 可以正常编译 计算机有 8 个可用处理器 我也使用 matlabpool 检查过 include mex h include
  • 垂直子图的单一颜色条

    我想让下面的 MATLAB 图有一个沿着两个子图延伸的颜色条 像这样的事情 使用图形编辑器手动完成 Note 这与提出的问题不同here https stackoverflow com questions 39950229 matlab t
  • Matlab颜色检测

    我试图一致地检测同一场景的图像之间的某种颜色 这个想法是根据颜色配置文件识别一组对象 因此 例如 如果给我一个带有绿色球的场景 并且我选择绿色作为我的调色板的一部分 我想要一个具有反映它检测到球的矩阵的函数 任何人都可以为这个项目推荐一些
  • getappdata 在 MATLAB 中返回空矩阵

    我有一段代码 我在其中使用setappdata然后我使用以下方式调用数据getappdata即使它不为空 它也会返回一个空矩阵 我的一段简化代码如下 function edit1 Callback hObject eventdata han
  • 在 matlab 代码中使用 dll 文件

    我需要使用 Matlab 中由 dll 文件定义的函数 我有一个例子 那个家伙将 dll 转换为 mexw32 文件 但我知道我是如何做到这一点的 我尝试使用加载库但它没有创建任何文件 我怎样才能做到这一点 loadlibrary http
  • 如何使用Matlab将数据保存到Excel表格中?

    我想将数据以表格形式保存在 Excel 工作表中 它应该看起来像 Name Age R no Gpa Adnan 24 18 3 55 Ahmad 22 12 3 44 Usman 23 22 3 00 每次当我执行我的文件时类数据 m 下
  • for 循环中的绘图没有可见点

    我正在努力解决我想使用 for 循环制作的情节 我知道当我在循环之后添加它时它会起作用 只是一个简单的图 但我想用另一种方式尝试一下 fib ones 1 10 for k 3 10 hold on fib k fib k 1 fib k
  • 在matlab中,如何读取python pickle文件?

    在 python 中 我生成了一个 p 数据文件 pickle dump allData open myallData p wb 现在我想在Matlab中读取myallData p 我的Matlab安装在Windows 8下 其中没有Pyt

随机推荐

  • ESXI web 管理端虚拟机导出ovs ova模板

    首先 虚拟机关机 确保本地主机的vmware有OVFTOOL工具 使用管理员身份运行cmd 进入到OVFTOOL的目录下执行 ovftool exe vi root server ip centos7 9 D vm template new
  • 2022-itwangyang-前端数据埋点 SDK

    前端数据埋点 SDK 前言 相信不少人因为项目中没有接触过数据埋点相关的内容 而没有花时间去了解它 总觉得这又是一个自己还不能涉及的方面 然而数据埋点本身并不难理解 只是很难做得好 本文会从 认识数据埋点 SDK 设计前端数据埋点 SDK
  • 关于python3在Windows10环境下构建发布模块

    在 Head First Python 中的描述太过简略 况且还是mac系统 然后我又百度了很多博客 都没能解决 找不到路径 这个问题 直到今天 才弄出来 首先自己写一个模块 因为我是新手所以就按first python描述的那个输出函数作
  • Multisim基础 变压器 简单示例

    Multisim NI Multisim 14 0 Student Edition OS Windows 10 x64typesetting Markdown blog my oschina net zhichengjiu gitee gi
  • 计网第五章(运输层)(六)(TCP可靠传输的实现)

    目录 一 基本概述 二 具体实现 1 前后沿 2 利用指针描述发送窗口的状态 3 有差错情况 之前在数据链路层时已经讨论过可靠传输 计网第三章 数据链路层 二 可靠传输 也在其中提到过可靠传输并不局限于数据链路层 一 基本概述 TCP通过以
  • Batch Normalization详解(原理+实验分析)

    Batch Normalization详解 原理 实验分析 1 计算过程 2 前向传播过程 3 反向传播过程 4 实验分析 4 1 实验一 验证有没有BatchNorm下准确率的区别 4 2 实验二 验证有没有BatchNorm noisy
  • VSCode+Python, conda激活环境错误的解决方案: CommandNotFoundError

    之前VSCode运行Python总是会在终端报错 CommandNotFoundError Your shell has not been properly configured to use conda activate 原因在于每次都会
  • 幼儿园观察记录的目的和目标_幼儿园观察记录:如何让幼儿在区角活动中真正动起来...

    区角活动是幼儿园教育教学活动中的重要组成部分 它贯穿于幼儿园一日生活的各个环节当中 它是幼儿园教育中促进幼儿个性化发展的有效形式 区角活动的内容与主题结合提升目的性 区角活动的材料与本土资源结合 凸显本土性 季节性 可变性 富有特色 教师在
  • mysql 2分钟_java程序mysql数据库每隔2分钟左右就会中断,必须重启tomcat

    原标题 java程序mysql数据库每隔2分钟左右就会中断 必须重启tomcat 解决方案一 推荐 1 问题解决方案及说明 https blog csdn net liuyangvoid article details 25975157 出
  • AIGC从入门到精通

    目录 1 概述 2 一键起飞 3 保持ID生成 4 教程 原理 训练阶段 采样阶段 5 大模型微调 6 训练 7 商业价值 Fooocus sd webui 界面 新手建议使用 ComfyUI 简体中文版 1 概述 Stable Diffu
  • [1065]impala查询内存限制Memory limit exceeded

    错误信息 ERROR Memory limit exceeded Query did not have enough memory to get the minimum required buffers in the block manag
  • Python3发送邮件

    coding utf 8 author ChenBaijing date 2022 4 7 14 33 Python对SMTP支持有smtplib和email两个模块 smtplib负责 登录邮件服务器 认证 和 发送邮件 对smtp协议进
  • vmware虚拟机开机黑屏的解决方法

    今天有一个项目需要用到OSX坯境 打开vmware 启动原来安装的 OSX10 11 结果启动后 无轮怎么操作就是黑屏 然后就百度了一下vmware黑屏的解决办法 尝试了一下问题解决 同时也把解决过程记录一下 1 挂起的时候我们是能够见到显
  • IPSec/GRE与PPTP的比较

    PPTP PPTP Point to Point Tunneling Protocol 是点对点的协议 基于拨号使用的PPP协议使用PAP或CHAP之类的加密算法 或者使用Microsoft的点对点加密算法MPPE 而L2TP Layer
  • Spring Boot + Mybatis 实现动态数据源

    动态数据源 在很多具体应用场景的时候 我们需要用到动态数据源的情况 比如多租户的场景 系统登录时需要根据用户信息切换到用户对应的数据库 又比如业务A要访问A数据库 业务B要访问B数据库等 都可以使用动态数据源方案进行解决 接下来 我们就来讲
  • Ultra Libraian介绍

    Ultra Libraian介绍 我从Ultra Libraian官网上查找一些信息 在下面统一介绍一下它 方便大家使用 Ultra Libraian简介 Ultra Libraian是一个零件库服务商 提供方便电子工程师和PCB Layo
  • 边界值法中的上点、内点和离点分析

    1 边界值法概念 边界值法设计测试用例 是对输入或输出的边界值 有效等价类和无效等价类的界限 进行测试的一种黑盒测试方法 2 边界值法存在的意义 测试经验表明错误往往会发生在输入或输出范围的边界上 所以边界值法是对这些边界进行测试 是对划分
  • 多系统U盘启动盘的制作,成功启动win8PE,ubuntu,deepin2013,deepin2014,以及通过U盘启动电脑已装系统。

    以前的用U盘装系统都是用ultraISO 直接制作启动盘 有的时候一连着好几天都得捣鼓着装系统 今天是windows 明天是ubuntu 后天就可能是其它linux发行版了 很不方便 所以就想利用一个U盘做一个多系统的启动盘 经过N天不断的
  • Linux安装完mysql远程连接Authentication plugin

    root iZ2ze8bpfv23icsz3g2hp2Z log mysql u root p Enter password Welcome to the MySQL monitor Commands end with or g Your
  • MATLAB 学习笔记(6)MATLAB 的 upsample 函数和 downsample 函数

    目录 upsample 和 downsample 程序验证 上采样 upsample 下采样 downsample 其他参数设定 总结 upsample 和 downsample upsample 和 downsample 顾名思义就是上采