主要内容

dsp.FourthOrderSectionFilter

实现级联四阶部分过滤器

自从R2019a

描述

dsp.FourthOrderSectionFilter实现了一连串的四阶部分过滤器。

创建

描述

”丛书= dsp.FourthOrderSectionFilter返回一个FourthOrderSectionFilter对象,”丛书,实现了一个级联的四阶滤波器部分。

例子

”丛书= dsp.FourthOrderSectionFilter (全国矿工工会,)返回一个FourthOrderSectionFilter对象的分子属性设置为全国矿工工会分母属性设置为

例子

”丛书= dsp.FourthOrderSectionFilter (名称,值)返回一个FourthOrderSectionFilter对象与每个指定属性名称设置为指定的值。你可以在任何顺序指定额外的参数名称-值对。

例子:安全系数= dsp.FourthOrderSectionFilter(“分母”,“分子”,num穴)

属性

全部展开

分子滤波器的系数,作为指定l5矩阵,l是过滤部分的数量。这个属性的大小不能改变时,对象是锁着的。但是,可以修改的值。

数据类型:|
复数的支持:金宝app是的

指定的过滤器,分母系数作为l5矩阵或一个l4矩阵,l是过滤部分的数量。领先的分母系数被认为是1总是这样。如果分母的大小l4,一个(s)是附加的大小l5。如果分母的大小l5,第一列值被忽略和附加的1 s轨道。这个属性的大小不能改变时,对象是锁着的。但是,可以修改的值。

数据类型:|
复数的支持:金宝app是的

使用

描述

y=安全系数(x)过滤器使用指定的输入信号四阶滤波器产生过滤输出部分,y

输入参数

全部展开

输入信号,指定为一个向量或矩阵。

输入可以是一个大小可变的信号,也就是说,每个通道的帧大小(行数)可以改变即使被锁定的对象。然而,通道的数量不能改变(列数)。

数据类型:|
复数的支持:金宝app是的

输出参数

全部展开

过滤输出,作为一个向量或矩阵返回。输出具有相同的大小、数据类型和复杂性作为输入信号。

数据类型:|
复数的支持:金宝app是的

对象的功能

全部展开

fvtool 可视化DSP滤波器的频率响应
freqz 离散滤波器的频率响应系统对象
impz 离散滤波器的脉冲响应系统对象
信息 信息过滤系统对象
多项式系数 返回过滤器系统对象系数的结构
成本 实现滤波器的估计成本系统对象
grpdelay 离散滤波器群延迟响应系统对象
一步 运行系统对象算法
释放 释放资源,并允许修改系统对象属性值和输入特征
重置 重置的内部状态系统对象
克隆 创建重复的系统对象
isLocked 确定系统对象在使用

例子

全部折叠

过滤嘈杂的正弦信号使用dsp.FourthOrderSectionFilter对象。可视化最初使用频谱分析仪和过滤信号。

输入信号

输入信号的总和两个正弦波频率100赫兹和350赫兹。添加零均值高斯白噪声标准差为1的军医正弦波之和。采样率为1000 Hz。

frameSize = 1024;fs = 1000;Sine1 = dsp.SineWave (5100“SamplesPerFrame”,1024,“SampleRate”fs);Sine2 = dsp.SineWave(π/ 2,2350“SamplesPerFrame”,1024,“SampleRate”fs);x = Sine1 Sine2() +() + 1的军医。* randn (Sine1.SamplesPerFrame, 1);

四阶部分(FOS)提交滤波器系数

安全系数的分子和分母系数滤波器使用designParamEq这是音频工具箱的一部分:

% N = (2、4);%获得= (5、10);% centerFreq = [0.025, 0.75];%带宽= [0.025,0.35];%模式=“安全系数”;% (num,窝)= designParamEQ (N,增益,centerFreq、带宽、模式、“定位”,“行”);num = [0 0 1.0223 -1.9368 0.9205 1.5171 2.3980 - 1.4317 0.6416 - 0.2752);穴= (-1.9368 - 0.9428 0 0 2.0136 1.9224 1.0260 0.3016);

初始化滤波和频谱分析仪

构建安全系数IIR滤波器使用全国矿工工会系数。构造一个频谱分析仪来可视化最初的正弦信号和过滤后的信号。

安全系数= dsp.FourthOrderSectionFilter (“分子”全国矿工工会,“分母”穴);范围=简介(“SampleRate”fs,“PlotAsTwoSidedSpectrum”假的,“FrequencyScale”,“线性”,“方法”,“韦尔奇”,“标题”,“原始和过滤信号”,“ShowLegend”,真的,“ChannelNames”,{原始信号的,“过滤信号”});

滤波器的输入信号,想象原始和过滤后的光谱。

我= 1:1 y =”丛书(x);范围((x, y));结束释放(范围);

设计一个低通滤波器(FOS)提交过滤器使用四阶部分fdesign函数。使用此过滤器,过滤器的正弦信号和两个音调,一个在3千赫,其他12 kHz。

设计一个基于过滤器使用椭圆方法“df2tsos”结构。在频域中使用L-infinity规范扩展。通带频率指定为0.15 π rad /样本和阻带频率0.25 π rad /样品。指定1 dB容许通带波纹和60 dB的阻带衰减。

Fp = 0.15;置= 0.25;美联社= 1;Ast = 60;

使用一个过滤器系数是按比例缩小的fdopts.sosscaling对象。缩放对象定义分子没有约束,和ScaleValueConstraint被设置为“单位”,指定统一的比例缩放。

fdo = fdopts.sosscaling;fdo.NumeratorConstraint =“没有”;fdo.ScaleValueConstraint =“单位”;f = fdesign.lowpass (“Fp,置,美联社,Ast”Fp,置,美联社,Ast);hFilter =设计(f,“ellip”,“SystemObject”,真的,“FilterStructure”,“df2tsos”,“SOSScaleNorm”,“Linf”,“SOSScaleOpts”fdo)
hFilter = dsp。SOSFilter属性:结构:“直接形成二转置”CoefficientSource:“财产”分子:[3 x3双]分母:[3 x3双]HasScaleValues:真正的ScaleValues:[1 1 1 1.0000]显示所有属性

可视化设计滤波器的低通滤波器的频率响应fvtool

fvtool (hFilter)

图1图:级响应(dB)包含一个坐标轴对象。坐标轴对象与标题级响应(dB),包含归一化频率(空白乘以πr d / s m p l e), ylabel级(dB)包含2线类型的对象。

将低通滤波器转换成带通滤波器使用iirlp2bp函数。

(num,窝)= iirlp2bp (hFilter.Numerator hFilter.Denominator,《外交政策》,[0.25,0.75])
num =3×50.2456 0 0 0 -0.2456 0.4175 -0.0000 -0.4206 -0.0000 0.4175 0.4281 -0.0000 -0.6433 -0.0000 0.4281
穴=3×50 0 1.0000 -0.0000 0.5088 1.0000 -0.0000 0.0060 -0.0000 0.8657 1.0000 -0.0000 0.5160 -0.0000 0.5283

创建一个四阶部分过滤器使用这些分子和分母系数。

安全系数= dsp.FourthOrderSectionFilter (num穴)
安全系数= FourthOrderSectionFilter属性:分子:[3 x5双]分母:[3 x5双)

可视化四阶节滤波器的频率响应fvtool

fvtool (fos)提交;

图2图:级响应(dB)包含一个坐标轴对象。坐标轴对象与标题级响应(dB),包含归一化频率(空白乘以πr d / s m p l e), ylabel级(dB)包含一个类型的对象。

滤波器的输入信号的四阶部分过滤器。可视化的光谱原始信号使用频谱分析仪和过滤后的信号。

输入是一笔两个正弦波频率3千赫和12 kHz,分别。输入采样率是44.1 kHz,帧大小设置为1024个样本。

fs = 44100;FrameLength = 1024;SINE1 = dsp.SineWave (“SamplesPerFrame”FrameLength,“SampleRate”fs,“频率”,3000);SINE2 = dsp.SineWave (“SamplesPerFrame”FrameLength,“SampleRate”fs,“频率”,12000);

初始化一个频谱分析仪来可视化信号光谱。

范围=简介(“SampleRate”fs,“PlotAsTwoSidedSpectrum”假的,“标题”,“原始和过滤信号”,“ShowLegend”,真的,“YLimits”50 [-180],“ChannelNames”,{原始信号的,“过滤信号”});指数= 1:1000 x = SINE1 SINE2 () + () + 0.001 * randn (FrameLength, 1);y =”丛书(x);范围((x, y));结束

版本历史

介绍了R2019a

另请参阅

对象