Matlab信号处理笔记

这篇具有很好参考价值的文章主要介绍了Matlab信号处理笔记。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

寒假开始学习基于MATLAB的信号处理。学习教材:matlab中case函数,MATLAB信号处理,matlab
以此博客来记录

一、MATLAB基础

1.Matlab选择结构——switch-case语句

Matlab基本函数-fix函数

%例1.8 编写一个某地产公司对顾客所购买的房产实行打折销售的标准
price=input('请输入商品价格:')
switch fix(price/100)
    case {0,1}
        rate=0;
    case {2,3,4}
        rate=0.1/100;
    case num2cell(5:9)
        rate=0.2/100;
    case num2cell(10:24)
        rate=0.3/100;
end
price=price*(1-rate)

与C语言的switch-case语句不同的是,在MATLAB语言中,当其中一个case语句后的条件为真时,switch-case语句不对其后的case语句进行判断,也就是说在MATLAB语言中,即使有多条case判断语句为真,也只执行所遇到的第一条为真的语句。这样就不必像C语言那样,在每条case语句后加上break语句以防止继续执行后面为真的case条件语句。

2.break语句与continue语句的区别

break语句:中止本次循环,跳出最内层循环(即不再执行循环)
continue语句:跳过本次循环,去执行下一轮循环

%break语句
a=0;b=1;
for i=0:5
    b=b+1
    if i>2
        break
    end
    a=a+2
end

%运行结果:
a=0,2,4,6
b=1,2,3,4,5
%continue语句
a=0;b=1;
for i=0:5
    b=b+1
    if i>2
        continue
    end
    a=a+2
end

%运行结果:
a=0,2,4,6
b=1,2,3,4,5,6,7

3.try-catch语句

MATLAB try-catch结构

%try-catch语句
%例1.12 先求两矩阵的乘积,若出错,则自动转去求两矩阵的点乘
A=[1,2;3,4];
B=[5,6;7,8];

try
    C=A*B;
catch
    C=A.*B;
end
C

4.数组与矩阵

4.1数组

用“[]”创建一维数组,行数组元素用空格或者逗号分隔,列数组元素用分号分隔,标点符号一定要在英文状态下输入。

%创建数组实例
clear all
A=[]
B=[6 4 3 5 6 7] %行数组元素用空格或者逗号分隔
C=[4,2,4,5,6,7]
D=[1;4;56;67;75;3] %列数组元素用分号分隔
E=B' %转置
E=B.' %共轭转置

%程序结果
A =

     []


B =

     6     4     3     5     6     7


C =

     4     2     4     5     6     7


D =

     1
     4
    56
    67
    75
     3


E =

     6
     4
     3
     5
     6
     7


E =

     6
     4
     3
     5
     6
     7
%1.18 访问数组实例
clear all
clc
B=[1 2 3 5 7 6]
b1=B(1) %访问数组第1个元素
b2=B(1:3) %访问数组第1个到第3个元素
b3=B(3:end) %访问数组第3个到最后1个元素
b4=B(end:-1:1) % 数组元素反向输出
b5=B([1 4])  %访问数组第1个和第4个元素

%程序结果
B =

     1     2     3     5     7     6


b1 =

     1


b2 =

     1     2     3


b3 =

     3     5     7     6


b4 =

     6     7     5     3     2     1


b5 =

     1     5

%1-19 对一子数组赋值
clear all
clc
B=[1 2 3 5 7 6]
B(3)=34 %访问数组第3个元素  将第3个元素赋值为34
B([4 6])=[56 987] %访问数组第4个和第6个元素 分别赋值为56,987

%程序结果
B =

     1     2     3     5     7     6


B =

     1     2    34     5     7     6


B =

     1     2    34    56     7   987

4.1.1用冒号创建一维数组

具体格式为:x1:x2:x3,其中x1表示初始值,x2表示步长,x3表示终止值。利用冒号生成数组时,若x2为负值,则表示生成递减向量;若x2省略,则系统默认步长为1。

%1-20 用冒号创建一维数组
clear all
clc

A=3:6 %创建元素为3到6数组
B=3.1:1.5:6 %创建元素为3.1到6,步长为1.5的数组
C=3.1: -1.5 :-6%创建元素为3.1到-6,步长为-1.5的数组

%运行结果
A =

     3     4     5     6


B =

    3.1000    4.6000


C =

    3.1000    1.6000    0.1000   -1.4000   -2.9000   -4.4000   -5.9000

4.1.2用logspace()函数创建一维数组

MATLAB中常用logspace()函数创建一维数组,调用方式如下:
(1)y=logspace(a,b);该函数创建行向量y,第一个元素为10a,最后一个元素为10b,形成总是为50个元素的等比数列。
(2)y=logspace(a,b,n);该函数创建行向量y,第一个元素为10a,最后一个元素为10b,形成总是为n个元素的等比数列。

%1-21 用logspace()创建一维数组
clear all
clc
A=logspace(1,4,20) %创建一个由区间 [10^1,10^4] 内的20个点组成的向量

%运行结果
A =

   1.0e+04 *

  列 111

    0.0010    0.0014    0.0021    0.0030    0.0043    0.0062    0.0089    0.0127    0.0183    0.0264    0.03791220

    0.0546    0.0785    0.1129    0.1624    0.2336    0.3360    0.4833    0.6952    1.0000

补基础:
运行结果中的1.0e+04即110^4=10000
这是科学计数法的表示方式。
再举两个例子:
如果输入了向量[23 000 000, 55 000 000],那么MATLAB会将之表示为:1.0e+7
[2.3, 5.5]
如果输入了向量[0.000 000 23, 0.000 000 55],那么MATLAB会将之表示为:1.0e-7*[2.3, 5.5]

4.1.3用linspace()函数创建一维数组

y = linspace(x1,x2) 返回包含 x1 和 x2 之间的 100 个等间距点的行向量。
y = linspace(x1,x2,n) 生成 n 个点。这些点的间距为 (x2-x1)/(n-1)。
linspace 类似于冒号运算符“:”,但可以直接控制点数并始终包括端点。“linspace”名称中的“lin”指示生成线性间距值而不是同级函数 logspace,后者会生成对数间距值。

%1-22 用linspace()创建一维数组
clear all
clc
A=linspace(1,20,5)%创建一个由区间 [1,20] 中的5个等间距点组成的向量
B=linspace(1,2)%创建一个由区间 [1,2]中的100个等间距点组成的向量

%运行结果
A =

    1.0000    5.7500   10.5000   15.2500   20.0000


B =111

    1.0000    1.0101    1.0202    1.0303    1.0404    1.0505    1.0606    1.0707    1.0808    1.0909    1.10101222

    1.1111    1.1212    1.1313    1.1414    1.1515    1.1616    1.1717    1.1818    1.1919    1.2020    1.21212333

    1.2222    1.2323    1.2424    1.2525    1.2626    1.2727    1.2828    1.2929    1.3030    1.3131    1.32323444

    1.3333    1.3434    1.3535    1.3636    1.3737    1.3838    1.3939    1.4040    1.4141    1.4242    1.43434555

    1.4444    1.4545    1.4646    1.4747    1.4848    1.4949    1.5051    1.5152    1.5253    1.5354    1.54555666

    1.5556    1.5657    1.5758    1.5859    1.5960    1.6061    1.6162    1.6263    1.6364    1.6465    1.65666777

    1.6667    1.6768    1.6869    1.6970    1.7071    1.7172    1.7273    1.7374    1.7475    1.7576    1.76777888

    1.7778    1.7879    1.7980    1.8081    1.8182    1.8283    1.8384    1.8485    1.8586    1.8687    1.87888999

    1.8889    1.8990    1.9091    1.9192    1.9293    1.9394    1.9495    1.9596    1.9697    1.9798    1.9899100

    2.0000

4.2常见的数组运算

4.2.1数组的加减乘除幂

matlab中case函数,MATLAB信号处理,matlab

%例23-27 数组的运算
clear all
clc
A=[2 3 5 6 7 8]
B=[1 4 6 3 7 2]

C=A+B %数组的加法
D=A-B %数组的减法
E=A.*B %数组的乘法
F=A./B %数组的左除A/B
G=A.\B %数组的右除B/A
F=A.^B %数组的求幂

%运行结果
A =

     2     3     5     6     7     8


B =

     1     4     6     3     7     2


C =

     3     7    11     9    14    10


D =

     1    -1    -1     3     0     6


E =

     2    12    30    18    49    16


F =

    2.0000    0.7500    0.8333    2.0000    1.0000    4.0000


G =

    0.5000    1.3333    1.2000    0.5000    1.0000    0.2500


F =

           2          81       15625         216      823543          64

4.2.2数组的点积

C = dot(A,B) 返回 A 和 B 的标量点积。
如果 A 和 B 是向量,则它们的长度必须相同。
C = dot(A,B,dim) 计算 A 和 B 沿维度 dim 的点积。dim 输入是一个正整数标量。

%1.27 数组的点积
clear all
clc
A=[2 4 5]
B=[1 4 2]
a=dot(A,B) %数组的点积
b=sum(A.*B) %数组元素的乘积之和

%运行结果
A =

     2     4     5
B =

     1     4     2
a =

    28
b =

    28

4.2.3数组的关系运算

MATLAB 数组运算
MATLAB中的两个数之间的关系有6种描述

小于 <
大于 >
等于等于 ==
大于等于 >=
小于等于 <=
不等于 ~=

比较两个元素的大小时,若表达式为真,则返回结果1,否则返回0

%数组的关系运算
clear all
clc
A=[1 3 4 5 6]
B=[1 2 4 54 5]
C=A>B
D=A<B
E=A==B
F=A>=B
G=A<=B

%运行结果
A =

     1     3     4     5     6
B =

     1     2     4    54     5
C =

  1×5 logical 数组

   0   1   0   0   1
D =

  1×5 logical 数组

   0   0   0   1   0
E =

  1×5 logical 数组

   1   0   1   0   0
F =

  1×5 logical 数组

   1   1   1   0   1
G =

  1×5 logical 数组

   1   0   1   1   0

4.3矩阵

4.3.1矩阵的表示

(1)直接输入法
%直接输入法创建矩阵
clear all
clc
A = [1 34 45;12 23 54;65 32 6]%行与行之间既可以通过;号隔开,也可以通过回车符隔开
B=[1 2 4
   32 43 54
   54,65,756]

%运行结果
A =

     1    34    45
    12    23    54
    65    32     6

B =

     1     2     4
    32    43    54
    54    65   756
(2)载入外部数据文件

data.txt的文件内容:
matlab中case函数,MATLAB信号处理,matlab

%读取数据文件data.txt
clear all
clc
load data.txt %载入数据文件
imagesc(data)%以图像的形式显示
colormap winter %查看并设置当前颜色图为"winter"冷色调

运行结果:
matlab中case函数,MATLAB信号处理,matlab
补充:MATLAB | MATLAB配色不够用 全网最全的colormap补充包来啦写论文时可参考修改配色

(3)利用MATLAB内置函数创建矩阵

函数名 功能介绍
ones() 产生全为1的矩阵
zeros() 产生全为0的矩阵
eye() 产生单位矩阵
rand() 产生在(0,1)区间分布的随机矩阵
randn() 产生均值为0,方差为1的标准正态分布随机矩阵
compan() 伴随矩阵
gallery() Higham检验矩阵
hadamard() Hadamard阵
hankel() Handkel阵
hilb() Hilbert阵
magic() 魔方阵
pascal() pascal阵
rosser() 经典对称特征值
toeplitz() Toeplitz帧
vander() vander阵
wilknsion() wilknsion特征值检验矩阵

%利用系统内置函数创建矩阵
clear all
clc
A=zeros(5,4) %5行4列全为0的矩阵
close all
B=randn(5,4) %5行4列均值为0,方差为1的标准正态分布随机矩阵
imagesc(B)%以图像的形式显示
colormap winter %查看并设置当前颜色图为"winter"冷色调

%运行结果
A =

     0     0     0     0
     0     0     0     0
     0     0     0     0
     0     0     0     0
     0     0     0     0
B =

   -1.0891    0.0859   -0.6156   -1.4023
    0.0326   -1.4916    0.7481   -1.4224
    0.5525   -0.7423   -0.1924    0.4882
    1.1006   -1.0616    0.8886   -0.1774
    1.5442    2.3505   -0.7648   -0.1961

运行结果:
matlab中case函数,MATLAB信号处理,matlab

(4)利用M文件创建和保存矩阵

创建M文件,在其中输入矩阵,保存为AA.m,然后在命令行中输入AA,即可。

%利用M文件创建和保存矩阵 创建A1_32.m文件
A=[12 324 435
   213 43 45
   2 4 54]

运行结果:
matlab中case函数,MATLAB信号处理,matlab

4.3.2矩阵的寻访
(1)单元素寻访
%矩阵的单元素寻访
clear all
clc
A=[12 324 435
   213 43 45
   2 4 54]
x=A(1,1)
y=A(2,2)
z=A(3,1)

%运行结果
A =

    12   324   435
   213    43    45
     2     4    54
x =
    12
y =
    43
z =
     2
(2)多元素寻访

(1) A(e1:e2:e3)表示取数组或矩阵A的第e1元素开始每隔e2步长一直到e3的所有元素;
(2) A([m n l])表示取数组或矩阵A中的第m、n、l个元素;
(3) A(:,j)表示取A矩阵的第j列全部元素;
(4) A(i,:)表示取A矩阵的第i列全部元素;
(5) A(i:i+m,:)表示取A矩阵第i~(i+m)行的全部元素;
(6) A(:,k,k+m)表示取A矩阵第k~(k+m)列的全部元素;
(7) A(i:i+m,k:k+m)表示取A矩阵第i~ (i+m)行内,并在第k~(k+m)列中的所有元素;
(8) 还可以利用一般向量和end运算符来表示矩阵下标,从而获得子矩阵。end表示某一维末尾元素下标。

%对矩阵进行多元素寻访
clear all
clc
A=randn(4) %生成均值为0,方差为1的标准正态分布随机矩阵
A(1,:) %访问第1行所有元素
A(2:4,:) %访问第2到4行所有元素
A(:,2) %访问第2列所有元素
A %访问所有元素

%运行结果
A =

   -1.5771   -1.3337    0.0229   -0.8314
    0.5080    1.1275   -0.2620   -0.9792
    0.2820    0.3502   -1.7502   -1.1564
    0.0335   -0.2991   -0.2857   -0.5336

ans =

   -1.5771   -1.3337    0.0229   -0.8314
ans =

    0.5080    1.1275   -0.2620   -0.9792
    0.2820    0.3502   -1.7502   -1.1564
    0.0335   -0.2991   -0.2857   -0.5336
ans =

   -1.3337
    1.1275
    0.3502
   -0.2991
A =

   -1.5771   -1.3337    0.0229   -0.8314
    0.5080    1.1275   -0.2620   -0.9792
    0.2820    0.3502   -1.7502   -1.1564
    0.0335   -0.2991   -0.2857   -0.5336
4.3.3矩阵的运算

语法类似于数组的运算,见4.2。

5.图形的绘制

5.1二维图形的绘制

在MATLAB中,主要的二维绘图函数如下:

(1)普通二维图形的绘制

%1.50在同一坐标轴上绘制sin(x)、sin(2x)、sin(3x)这三条曲线
clear all
clc
x=0:0.01:3*pi
y1=sin(x)
y2=sin(2*x)
y3=sin(3*x)

figure
plot(x,y1,x,y2,x,y3)
axis([0 8 -1.5 1.5]) %设置坐标轴范围
grid on

xlabel('x')
ylabel('y')
title('演示绘图基本步骤')
legend('sin(x)','sin(2x)','sin(3x)')

运行结果:
matlab中case函数,MATLAB信号处理,matlab

%显示函数y=2*exp(-0.5*x).*sin(2*pi*x)及其包络线
clear all
clc
x=(0:pi/100:2*pi)'
y1=2*exp(-0.5*x)*[1,-1]%上下两条包络线
y2=2*exp(-0.5*x).*sin(2*pi*x)%函数
x1=(0:12)/2
y3=2*exp(-0.5*x1).*sin(2*pi*x1)
figure
plot(x,y1,'-.',x,y2,'y-',x1,y3,'rp')

运行结果:
matlab中case函数,MATLAB信号处理,matlab
补基础:
(1) 表转置
(2).:点乘 就是将向量的每个元素对应进行相乘的操作
语法:.

运行:[1 2 3].*[4 5 6]
结果:[4 10 8]
(3)点积是将向量的元素对应相乘后,加起来
语法:dot(x1,x2)
Matlab中向量点乘、点积、叉乘计算

(2)双纵坐标图形的绘制

yyaxis left 激活当前坐标区中与左侧 y 轴关联的一侧。后续图形命令的目标为左侧。
yyaxis right 激活当前坐标区中与右侧 y 轴关联的一侧。后续图形命令的目标为右侧。

%绘制双纵坐标图形
x=linspace(0,4)
y=x
yyaxis left
plot(x,y,'b-.')

x1=0:pi/10000:7*pi
y1=sin(x1*2*pi)
yyaxis right
plot(x1,y1,'r.')

运行结果:
matlab中case函数,MATLAB信号处理,matlab

补基础:
  1. text:向数据点添加文本说明
% 绘制一条正弦曲线。在点 (π,0) 处,添加文本说明 sin(π)
x = 0:pi/20:2*pi;
y = sin(x);
plot(x,y)
text(pi,0,'\leftarrow sin(\pi)') %使用 \pi 表示希腊字母 π。使用 \leftarrow 显示一个向左箭头。

运行结果:
matlab中case函数,MATLAB信号处理,matlab

  1. gtext:使用鼠标将文本添加到图窗
% 绘制一条正弦曲线。在点 (π,0) 处,添加文本说明 sin(π)
x = 0:pi/20:2*pi;
y = sin(x);
plot(x,y)
gtext('\leftarrow sin(\pi)','color','red','fontsize',14) %使用 \pi 表示希腊字母 π。使用 \leftarrow 显示一个向左箭头。color设置颜色属性为红色。fontsize设置字体大小为14

运行结果:
matlab中case函数,MATLAB信号处理,matlab

二、信号与系统分析基础

1.离散时间信号的概念

离散时间信号 : 在时间t上是离散的值。
时间离散, 幅值连续。(在任意两个离散时间点上,两个幅值差无限小)。 比如抽样信号。
时间离散, 幅值离散。 定义为数字信号。
离散时间信号常常可以用下图表示:
matlab中case函数,MATLAB信号处理,matlab
图中横坐标虽然画的是一条连续线,但重要的时要知道x[n]仅仅在n为整数值时才有定义,认为x[n]在n不为整数时就是零时不正确的;x[n]在n为非整数时只是无定义。

%用图示法来表示离散时间信号
clc
clear all
N=[-3 -2 -1 0 1 3 3 2 5 6 7 6 9 11]
X=[0 2 3 3 2 3 0 -1 -2 -3 -4 -5 1 2]
subplot(211)
stem(N,X) %绘制离散针状图
hold on
plot(N,zeros(1,length(X)),'r') %绘制横轴
set(gca,'box','on')%将图轴方框绘制出来
xlabel('序列号');ylabel('序列值')
subplot(212)
plot(N,X,'r')
hold on
plot(N,zeros(1,length(X)),'b')
xlabel('时间/s');ylabel('函数值')

运行结果:
matlab中case函数,MATLAB信号处理,matlab

2.采样定理

matlab中case函数,MATLAB信号处理,matlab

% 时域的信号长度,决定频域的采样间隔,它们成导数关系
% 时域中信号有N点,每点间隔dt,所以时域信号长度为N*dt
% 那么频谱每点的间隔就是1/(N*dt)

clc
clear all

dt=0.01;n=0:90-1
t=dt*n
f=10 %原始信号频率为10HZ
x=sin(3*pi*f*t+0.5)%原始信号

dt=0.1;n=0:10-1
t1=dt*n
x1=sin(3*pi*f*t1+0.5)%采样后的信号
subplot(311);plot(t,x);title('原始信号')
subplot(312);plot(t,x,t1,x1,'rp');title('采样过程')
subplot(313);plot(t1,x1);title('抽样后的信号')

运行结果:
matlab中case函数,MATLAB信号处理,matlab文章来源地址https://www.toymoban.com/news/detail-724126.html

2.3 离散时间序列

到了这里,关于Matlab信号处理笔记的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • MATLAB信号处理与应用 读书笔记 一

    完成了基本操作,今天组数也正常,需要对应解决fsctrl文件中的信号处理相关 重点关注4傅里叶变换,6FIR滤波器,10信号处理中的应用 字符的链接[\\\'aa\\\',\\\'bb\\\']; FFT用DFT原理,理解起来还是吃力 FFT绘图部分,原信号: 叠加上随机噪声 plot画图,画连续的也需要进行点数离散化,点

    2024年02月04日
    浏览(35)
  • Matlab信号处理1:模拟去除信号噪声

    一个简单的示例: 设计Matlab程序,去掉左图信号中大于20Hz的频率,使其变为右图。 注: 1. 第85行低通滤波器的设计需要在命令行窗口输入 filterDesigner 以打开滤波器设计窗口,如下图: 在窗口中设置如下红框中主要参数,然后点击 设计滤波器 : 生成成后,会出现粉框中的

    2024年02月09日
    浏览(24)
  • 基于matlab的语音信号处理

    摘要 利用所学习的数字信号处理知识,设计了一个有趣的音效处理系统,首先设计了几种不同的滤波器对声音进行滤波处理,分析了时域和频域的变化,比较了经过滤波处理后的声音与原来的声音有何变化。同时设计实现了语音的倒放,变速播放,回响,音调转换等处理效果

    2024年02月08日
    浏览(32)
  • 【数字信号处理课程设计】基于MATLAB实现语音信号的采集与处理(偏重滤波)

    目录 一、目标与任务 二、原理介绍 2.1 录音原理 2.2 滤波器的设计原理及设计方法 2.3 IIR 数字滤波器设计原理 2.4 双线性变换法 三、GUI界面设计与实现 四、基于MATLAB仿真 4.1实验过程 4.2 结果分析 五、总结 5.1 函数用法总结 5.2 心得体会 六、参考文献 这个项目在我的B站上有专

    2024年01月18日
    浏览(42)
  • MATLAB——信号处理仿真功能课程设计报告

    摘    要... I 目    录. II 1 设计目的及内容. 1 1.1 课程设计目的. 1 1.2 课程设计内容. 1 2 课程设计基本原理. 3 2.1 基本信号. 3 2.2 计算原理. 3 3 设计与仿真. 4 3.1 基本信号. 4 3.2计算过程. 6 3.3 matlab仿真原理. 7 3.4 计算结果. 8 3.5结果分析. 10 总    结. 12 参 考 文 献. 13 附录 仿真

    2024年02月11日
    浏览(33)
  • 使用matlab进行回声处理(三重回声)-数字信号处理课设

    1.录制一段声音信号,作为原音频信号,生成频域与时域图形,观察与分析其时域 与频域图形。 2.对该音频信号进行时域处理,并且实现对该声音信号添加第一层回声。 3.对该音频信号再继续一次进行时域处理,实现对该声音信号添加第二层回声。 4.将三段音频信号进行合成

    2024年02月03日
    浏览(35)
  • MATLAB|信号处理的Simulink搭建与研究

     💥💥💞💞 欢迎来到本博客 ❤️❤️💥💥 🏆博主优势: 🌞🌞🌞 博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️ 座右铭: 行百里者,半于九十。 📋📋📋 本文目录如下: 🎁🎁🎁 目录 💥1 概述 📚2 运行结果 🎉3 参考文献 🌈4 Matlab代码实现 信号处

    2024年02月13日
    浏览(29)
  • 【Matlab】音频信号谱分析及椭圆滤波处理

    一个使用matlab对音频信号进行频谱分析及滤波处理的学习笔记,本文使用的是椭圆滤波器。 音频下载 demo.mp3 读取音频信号进行傅里叶变换 结果如下 在谱分析中使用matlab自带的快速傅里叶变换函数进行变换 在IIR滤波器设计中使用椭圆低通滤波器 椭圆滤波器使用 入门级教程

    2024年02月12日
    浏览(33)
  • 【数字信号处理】带通采样定理及其MATLAB仿真

    按照奈奎斯特采样定理(低通采样),采样频率 f s f_{s} f s ​ 要大于等于信号中最高频率 f m a x f_{max} f ma x ​ 的2倍,才可以保证采样后的数字信号通过DAC转换后,可以无失真的恢复为原信号。然而,如果信号的频率分布在某一有限频带上,并且信号的最高频率 f m a x f_{max} f

    2024年02月16日
    浏览(38)
  • 信号处理之FIR数字滤波器(Matlab仿真)

            数字滤波器的作用是滤除不感兴趣的信号,留下想要的信号。数字滤波器可分为无限脉冲响应(IIR)数字滤波器、有限脉冲响应(FIR)数字滤波器两种,两者各有优缺点,其中FIR数字滤波器因其具有良好的线性相位特性受到广泛应用,线性相位是指信号中各频率成分的相对

    2024年02月03日
    浏览(40)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包