数字信号处理及MATLAB仿真(3)——量化的其他概念

        上回书说到AD转换的两个步骤——量化与采样两个步骤。现在更加深入的去了解以下对应的概念。学无止境,要不断地努力才有好的收获。万丈高楼平地起,唯有打好基础,才能踏实前行。

        不说了,今天咱们继续说说这两个步骤,首先说一下量化吧,我们从上篇文章的程序当中,很明显的可以看出,不管是通过在一段时间内取最小值作为量化电平,还是通过取整函数来进行量化的功能。二者所做出的量化信号与原信号之间都存在着一定的误差。而这个偏差就是我们常称的量化误差。量化误差是指在将模拟信号或连续取值的信号转换为有限个离散值(量化)的过程中,由于量化导致的信号值与原始信号值之间的偏差。简单来说,量化是对连续信号进行近似表示,必然会引入一定的误差。这个误差就是量化误差。当然这个量化误差好像也可以称为量化噪声。

        接下来,看看评估量化系统性能的重要指标之一——量化信噪比(Signal-to-Noise Ratio,SNR)。在将模拟信号转换为数字信号的量化过程中,由于量化的有限精度,不可避免地会引入量化误差,而量化误差可视为一种噪声。量化信噪比定义为信号功率与量化噪声功率的比值,记SNR = 10lg\frac{P_{s}}{P_{n}}。而计算它的公式为 SNR = 6.02N+1.76dB。当然了,这两个形式计算的方差在实际中一定相等吗?理论是否等于实际?还是需要通过MATLAB来简单的看一下。以下是量化信噪比的程序。

%量化信噪比是评估量化系统性能的重要指标之一
%它表示信号功率与量化噪声功率之间的比率
%close all;
clear all;
clc
Fs = 10000; % 采样频率
t = 0:1/Fs:1; % 时间序列f = 1000; % 正弦信号频率
signal = sin(2*pi*f*t); % 正弦信号quantization_level = 2^8;  %ADC的位数为8位,量化电平为2^8。
quantization_signal = round(signal*quantization_level)/quantization_level;
quantization_error = signal- quantization_signal;     %量化噪声% 计算信号和噪声的功率(能量)
signal_energy = sum(signal.^2)/length(signal); % 信号功率
noise_energy = sum(quantization_error.^2)/length(signal); % 噪声功率% 计算信噪比(SQNR)
sqnr = 10 * log10(signal_energy / noise_energy);fprintf('实际量化信噪比(SQNR)= %.2f dB\n',sqnr);%验证公式:量化噪声的计算公式:SNR=6.02N+1.76dB;N是阶数此处N为8。
%理论值
SNR = 6.02*8+1.76;fprintf('理论量化信噪比(SQNR)= %.2f dB\n',SNR);

        看看实际与理论的差别。

        这里大家不要我写啥就是啥。可以调高采样率,或者这是修改信号的频率看看,是什么样子的。要学会自己去探索。接下来看几个概念。

        1、量化噪声有什么特点?量化噪声是由于信号在模数转换(A/D转换)过程中产生的误差引入的,具有以下特点:均匀分布: 在理想情况下,量化噪声是均匀分布的,意味着在每个量化间隔内的误差是随机的。量化噪声的功率: 量化噪声的功率与信号的量化级数有关,通常在低频段上具有显著的能量。量化噪声的幅度: 量化噪声的幅度与量化级数相关,通常用均方根误差(RMSE)来度量。

  2、回顾一下量化信噪比的概念。量化信噪比(Signal-to-Noise Ratio, SNR)是指信号的功率与量化噪声的功率之比,通常以分贝(dB)为单位表示。高SNR表示量化过程中噪声较小,信号质量较高。

      3、低通采样和带通采样的差异:低通采样: 在低通采样中,信号在进行采样之前首先通过一个低通滤波器。低通滤波器会去除信号中超过Nyquist频率(采样频率的一半)的高频成分,以防止折叠现象的发生。折叠现象是指高频信号在低采样频率下被错误地表示为低频信号。带通采样: 带通采样是在采样之前使用带通滤波器选择感兴趣的频率带。这种方法用于处理带通信号,只保留特定频率范围内的信号成分。

        4、频率如何通过采样来完成折叠?频率折叠是指在采样过程中,超过Nyquist频率(采样频率的一半)的信号频率被错误地表示为低于Nyquist频率的信号。这是因为在离散时间中,信号的频谱是周期性的。通过适当选择采样率和使用低通滤波器预处理信号,可以避免频率折叠现象的发生。

        好了,今天就说这么多吧,把量化的其他概念说完了。明天继续采样的一些概念。

        欲知后事如何,且听下回分解。OVO.......

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

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

相关文章

【国产开源可视化引擎Meta2d.js】网格

画布背景网格 在线体验: 乐吾乐2D可视化 示例: // 设置默认缺省网格属性 meta2d.store.options.grid true; // 开启 meta2d.store.options.gridColor eeeeee; // 网格线条颜色 meta2d.store.options.gridSize 10; // 格子大小// 设置单个图纸的网格…

pnpm的坑

请问pnpm的两个坑怎么解决: 第一个坑:没有节省磁盘空间 我已经配置了依赖的存储位置, 但我在项目里pnpm install以后,发现依赖包还是很大, 然后发现里面的链接并不是指向先前配置的依赖存储位置,而是指…

java核心-泛型

目录 概述什么是泛型分类泛型类泛型接口泛型方法 泛型通配符分类 泛型类型擦除分类无限制类型擦除有限制类型擦除 问题需求第一种第二种 概述 了解泛型有利于学习 jdk 、中间件的源码,提升代码抽象能力,封装通用性更强的组件。 什么是泛型 在定义类、接…

VSCode设置好看清晰的字体!中文用鸿蒙,英文用Jetbrains Mono

一、中文字体——HarmonyOS Sans SC 1、下载字体 官网地址:https://developer.huawei.com/consumer/cn/design/resource/ 直接下载:https://communityfile-drcn.op.dbankcloud.cn/FileServer/getFile/cmtyPub/011/111/111/0000000000011111111.20230517…

加装德国进口高精度主轴 智能手机壳「高质量高效率」钻孔铣槽

在当前高度智能化的社会背景下,智能手机早已成为人们生活、工作的必备品,智能手机壳作市场需求量巨大。智能手机壳的加工过程涉及多个环节,包括钻孔和铣槽等。钻孔要求精度高、孔位准确,而铣槽则需要保证槽位规整、深度适宜。这些…

【漏洞复现】TerraMaster TOS exportUser.php 远程命令执行

免责声明: 本文内容旨在提供有关特定漏洞或安全漏洞的信息,以帮助用户更好地了解可能存在的风险。公布此类信息的目的在于促进网络安全意识和技术进步,并非出于任何恶意目的。阅读者应该明白,在利用本文提到的漏洞信息或进行相关测…

Leetcode3195. 包含所有 1 的最小矩形面积 I

Every day a Leetcode 题目来源:3195. 包含所有 1 的最小矩形面积 I 解法1:遍历 设最左、最右、最上、最下的 1 的行号/列号分别为 left、right、top、bottom,则答案为:(right - left 1) * (bottom - top 1)。 代码&#xf…

JAVA 对象存储OSS工具类(腾讯云)

对象存储OSS工具类 import com.qcloud.cos.COSClient; import com.qcloud.cos.ClientConfig; import com.qcloud.cos.auth.BasicCOSCredentials; import com.qcloud.cos.auth.COSCredentials; import com.qcloud.cos.model.ObjectMetadata; import com.qcloud.cos.model.PutObj…

基于java+springboot+vue实现的仓库管理系统(文末源码+lw+ppt)23-499

第1章 绪论 伴随着信息社会的飞速发展,仓库管理所面临的问题也一个接一个的出现,所以现在最该解决的问题就是信息的实时查询和访问需求的问题,以及如何利用快捷便利的方式让访问者在广大信息系统中进行查询、分享、储存和管理。这对我们的现…

WordPress:快速搭建站点,wp安装及模版介绍

最近搭建个人站点比较多,都是想把业务做到国外,通过google来引流,那我们今年就来介绍一个比较受欢迎的站点平台wordPress。WordPress是使用PHP语言开发的博客平台,用户可以在支持PHP和MySQL数据库的服务器上架设属于自己的网站。也…

JavaScript 中的面向对象编程--->构造函数--->原型对象与原型链,由浅入深详细讲解!

前言:哈喽,大家好,我是前端菜鸟的自我修养!今天给大家分享JavaScript 中的面向对象编程--->构造函数--->原型对象与原型链,由浅入深详细讲解!并提供具体代码帮助大家深入理解,彻底掌握&am…

【算法训练记录——Day42】

Day42——动态规划Ⅳ 1.leetcode_1049最后一块石头的重量II2.leetcode_494目标和3.leetcode_474一和零 1.leetcode_1049最后一块石头的重量II 思路:石头只能用一次。。。怎么才能让碰撞后重量最小呢,还要转换成动态规划,难以理解。。 看题解&…

基于轨迹信息的图像近距离可行驶区域方案验证

一 图像可行驶区域方案 1.1 标定场景 1.2 标定步骤 设计一定间距标定场,在标定场固定位置设置摄像头标定标识点。主车开到标定场固定位置录制主车在该位置各个摄像头数据,通过摄像头捕获图像获取图像上关键点坐标pts-2d基于标定场设计,计算…

恢复出厂设置手机变成砖

上周,许多Google Pixel 6(6、6a、6 Pro)手机用户在恢复出厂设置后都面临着设备冻结的问题。 用户说他们在下载过程中遇到了丢失 tune2fs 文件的错误 。 这会导致屏幕显示以下消息:“Android 系统无法启动。您的数据可能会被损坏…

Python28-9 XGBoost算法

XGBoost(eXtreme Gradient Boosting,其正确拼写应该是 "Extreme Gradient Boosting",而XGBoost 的作者在命名时故意使用了不规范的拼写,将“eXtreme”中的“X”大写,以突出其极限性能和效率)是一…

探索多模态预训练:MAnTiS、ActionCLIP、CPT与CoOp的Prompt技巧

上一篇博文整理了 预训练新范式(Prompt-tuning,Prefix-tuning,P-tuning) ,主要是围绕NLP上的成果,具体的概念本文也不做过多赘述。本篇文章将主要整理几篇有代表性的Prompt方法在多模态领域中的应用。 Mult…

普中51单片机:数码管显示原理与实现详解(四)

文章目录 引言数码管的结构数码管的工作原理静态数码管电路图开发板IO连接图代码演示 动态数码管实现步骤数码管驱动方式电路图开发板IO连接图真值表代码演示1代码演示2代码演示3 引言 数码管(Seven-Segment Display)是一种常见的显示设备,广…

C-11 三角剖分的调研

C-11 三角剖分算法 三角剖分就是将输入的多边形,分割成一系列互不重叠的三角形,其重要性就在这不多赘述。这个是一个别人总结的链接:http://vterrain.org/Implementation/Libs/triangulate.html 图片链接:http://www-cgrl.cs.m…

【笔记】在window上连接虚拟机中的redis

愚昧啊 困扰了我近两天的问题居然是因为是java代码写错地方了 在虚拟机中进入redis.conf文件 vim redis.conf /bind --斜杠搜索关键词 将值设置为 bind 0.0.0.0 保存 退出:wq 回到java中 添加redis依赖 刷新maven 就是在这一步出问题……………………………………自己在蓝…

新型水冷电阻设计-双面水冷电阻器

一款革命性的电阻器,专为低压和中压应用而设计,尤其是汽车、牵引或船舶系统中的恶劣条件。 EAK采用先进材料制造,采用专利设计,将电阻元件与水基冷却液封装并完全分离,为水冷应用提供模块化、轻量级、小容量、高功率解…