主要内容

dsp.IIRHalfbandDecimator

毁掉两个使用多相IIR的因素

描述

dsp.IIRHalfbandDecimator系统对象™执行高效的多相大量毁灭的输入信号的两倍。设计halfband过滤器,您可以指定要使用的对象一个椭圆或准线性设计阶段设计。使用这些对象设计方法计算滤波器系数。过滤输入,对象使用一个多相结构。allpass滤波器的多相结构最低乘数形式。

椭圆设计引入了非线性阶段并创建过滤器使用更少的系数比准线性设计。准线性相位设计克服了相位非线性在额外的成本系数。

或者,而不是设计halfband过滤器使用设计方法,您可以指定过滤系数直接。当你选择这个选项,allpass过滤器的两个分支多相实现可以在一个最低乘数形式或数字形式。

您还可以使用dsp.IIRHalfbandDecimator对象来实现双波段滤波器的分析部分银行过滤信号为低通和高通滤波部分波段。

过滤和downsample数据:

  1. 创建dsp.IIRHalfbandDecimator对象并设置其属性。

  2. 调用对象的参数,就好像它是一个函数。

了解更多关于系统对象是如何工作的,看到的系统对象是什么?

创建

描述

iirhalfbanddecim= dsp.IIRHalfbandDecimator返回一个halfband杀害多人者,iirhalfbanddecim使用默认设置。在默认设置下,系统对象过滤器和downsamples halfband频率的输入数据22050年赫兹,过渡的宽度4100年赫兹和阻带衰减80年dB。

例子

iirhalfbanddecim= dsp.IIRHalfbandDecimator (名称,值)返回一个IIR halfband杀害多人者,由一个或多个指定的附加属性名称,值对参数。

例子:iirhalfbanddecim = dsp.IIRHalfbandDecimator(“规范”,“筛选器顺序和阻带衰减”)创建一个IIR halfband杀害多人者对象与过滤器设置9和阻带衰减80年dB。

属性

全部展开

属性,除非另有注明nontunable后,这意味着你不能改变它们的值调用对象。对象锁当你叫他们,释放函数打开它们。

如果一个属性可调在任何时候,你可以改变它的值。

改变属性值的更多信息,请参阅系统设计在MATLAB使用系统对象

滤波器设计参数,指定为一个特征向量。当您设置规范滤波器的设计选项,您可以指定过滤器使用相应的设计参数FilterOrder,StopbandAttenuation,TransitionWidth属性。此外,您可以指定使用的设计方法DesignMethod。当您设置规范“系数”直接,您可以指定系数。

IIR halfband滤波器的顺序,指定为一个积极的标量整数。如果你设置DesignMethod“椭圆”,然后FilterOrder必须是一个奇数大于1。如果你设置DesignMethod“准线性阶段”,然后FilterOrder必须是4的倍数。

依赖关系

适用于当您设置这个属性规范“筛选器顺序和阻带衰减”“筛选器顺序和过渡宽度”

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

最低IIR halfband滤波器的阻带衰减需要,指定为一个积极的真正的标量。单位在dB。

依赖关系

这个属性只适用于当您设置规范“筛选器顺序和阻带衰减”“过渡宽度和阻带衰减”

数据类型:|

过渡IIR halfband滤波器的宽度,指定为一个积极的真正的标量。单位是赫兹。过渡宽度的值必须小于输入采样率的一半。

依赖关系

这个属性只适用于当您设置规范“过渡宽度和阻带衰减”“筛选器顺序和过渡宽度”

数据类型:|

IIR halfband滤波器设计方法,指定为“椭圆”“准线性阶段”。当属性设置“准线性阶段”多相结构,第一个分支是一个纯延迟,其结果是一个近似的线性相位响应。

依赖关系

这个属性只适用于当您设置规范除了接受任何价值“系数”

输入采样率,指定为一个积极的真正的标量。单位是赫兹。

依赖关系

这个属性只适用于当您设置规范除了接受任何价值“系数”

数据类型:|

内部allpass滤波器实现结构,指定为“最低乘数”波数字滤波器的

这个属性不是可调。

依赖关系

这个属性只适用于当您设置“规范”“系数”。每个结构使用一组不同的系数,独立存储在相应的对象属性。

第一分支Allpass多项式滤波器系数,作为指定N——- - - - - -1N——- - - - - -2矩阵。N是一阶或二阶allpass部分。

可调:是的

依赖关系

这个属性只适用于当您设置规范“系数”结构“最低乘数”

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

Allpass多项式滤波器系数的第二个分支,指定为一个N——- - - - - -1N——- - - - - -2矩阵。N是一阶或二阶allpass部分。

可调:是的

依赖关系

这个属性只适用于当您设置规范“系数”结构“最低乘数”

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

Allpass滤波器系数在第一波数字滤波器形式,指定为一个N——- - - - - -1N——- - - - - -2矩阵。N是一阶或二阶allpass部分。每个元素必须有一个绝对值小于或等于1

这个属性不是可调。

依赖关系

这个属性只适用于当您设置规范“系数”结构波数字滤波器的

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

Allpass滤波器系数的第二个分支波数字滤波器形式,指定为逗号分隔组成的“WDFCoefficients2”和一个N——- - - - - -1N——- - - - - -2矩阵。N是一阶或二阶allpass部分。每个元素必须有一个绝对值小于或等于1。

这个属性不是可调。

依赖关系

这个属性只适用于当您设置“规范”“系数”“结构”波数字滤波器的

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

国旗使第一allpass分支延迟,指定为一个逻辑标量。当这个属性是真的,第一个分支都被视为一个纯粹的延迟和属性AllpassCoefficients1WDFCoefficients1不适用。

这个属性不是可调。

依赖关系

这个属性只适用于当您设置规范“系数”

第一个分支长度延迟,指定为一个有限的积极的标量。该属性的值指定的数量的样品你可以延迟输入第一个分支。

这个属性不是可调。

依赖关系

这个属性只适用于当您设置规范“系数”HasPureDelayBranch为1。

数据类型:|

选择治疗的最后部分第二分支作为第一顺序,指定为一个逻辑标量。当这个属性1和系数的第二个分支N2矩阵,最后一行的对象忽略了第二个元素的矩阵。第二个分支的最后部分就变成了一个一阶部分。当这个属性设置0,最后一节的第二个分支是一个二阶节。当第二个分支系数的一个N1矩阵,该属性将被忽略。

这个属性不是可调。

依赖关系

这个属性只适用于当您设置规范“系数”

使用

描述

例子

ylow= iirhalfbanddecim (x)滤波器的输入信号,x,使用IIR halfband滤波器,iirhalfbanddecim,downsamples输出的2倍。

例子

(ylow,yhigh)= iirhalfbanddecim (x)计算ylowyhigh分析滤波器组的iirhalfbanddecim输入x。一个Ki——- - - - - -N被视为输入矩阵N独立的通道。系统对象生成两个power-complementary输出信号通过加减两多相分支分别输出。ylowyhigh是相同的大小(Ko——- - - - - -N)和数据类型。Ko=Ki/ 2,2是大量毁灭的因素。

输入参数

全部展开

数据输入,指定为一个列向量或矩阵。的行数的输入信号必须甚至由于大量毁灭因素总是2这个对象。如果输入是一个矩阵,每一列都被视为一个独立的通道。

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

输出参数

全部展开

返回的杀害多人者输出低通子带作为一个列向量或矩阵。输出,ylow是一个低通滤波器halfband过滤和downsampled版本的输入x。由于过滤器的halfband性质,将采样因素始终是2。

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

高通滤波的部分波段输出杀害多人者,作为一个列向量或矩阵返回。输出,yhigh是一个高通滤波halfband过滤和downsampled版本的输入x。由于过滤器的halfband性质,将采样因素始终是2。

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

对象的功能

使用一个目标函数,指定系统对象作为第一个输入参数。例如,释放系统资源的系统对象命名obj使用这个语法:

发行版(obj)

全部展开

freqz 离散滤波器的频率响应系统对象
fvtool 可视化DSP滤波器的频率响应
信息 信息过滤系统对象
成本 实现滤波器的估计成本系统对象
多相 多频滤波器的多相分解
一步 运行系统对象算法
释放 释放资源,并允许修改系统对象属性值和输入特征
重置 重置的内部状态系统对象

例子

全部折叠

创建一个最小订单低通IIR halfband死亡滤波器进行数据采样44.1 kHz。过滤器的过渡宽度为4.1 kHz,阻带衰减的80分贝。

IIRHalfbandDecim = dsp.IIRHalfbandDecimator (“DesignMethod”,“准线性阶段”);

获得滤波器系数。

c =多项式系数(IIRHalfbandDecim);

情节的大小和相位响应。

fvtool (IIRHalfbandDecim“分析”,“频率”)

图1图:级响应(dB)和相位响应包含一个坐标轴对象。坐标轴对象标题级响应(dB)和相位响应,包含频率(赫兹),ylabel级(dB)包含一个类型的对象。

使用halfband分析滤波器组和内插滤波器提取低频子带语音信号。

注意:audioDeviceWriter不支持系统对象™金宝appMATLAB在线

设置音频文件阅读器,分析滤波器组,音频设备的作家,插值过滤器。音频数据的采样率为22050 Hz。halfband过滤器有一个21岁的订单,一个过渡宽度2千赫。

误判率= dsp.AudioFileReader (“speech_dft.mp3”,“SamplesPerFrame”,1024);filterspec =“筛选器顺序和过渡宽度”;订单= 21;TW = 2000;IIRHalfbandDecim = dsp.IIRHalfbandDecimator (“规范”filterspec,“FilterOrder”订单,“TransitionWidth”TW,“SampleRate”,afr.SampleRate);IIRHalfbandInterp = dsp.IIRHalfbandInterpolator (“规范”filterspec,“FilterOrder”订单,“TransitionWidth”TW,“SampleRate”,afr.SampleRate / 2);美联社= audioDeviceWriter (“SampleRate”,afr.SampleRate);

视图的大小反应halfband过滤器。

fvtool (IIRHalfbandDecim)

图1图:级响应(dB)包含一个坐标轴对象。坐标轴对象与标题级响应(dB),包含频率(赫兹),ylabel级(dB)包含2线类型的对象。

阅读语音信号帧音频文件的1024个样本。滤波器的语音信号为低通和高通滤波部分波段halfband 5512.5赫兹的频率。重建语音信号的低通滤波器近似插值低通子带。过滤后的输出。

~结束(误判率)audioframe =误判率();xlo = IIRHalfbandDecim (audioframe);ylow = IIRHalfbandInterp (xlo);美联社(ylow);结束

等到音频文件结束,然后关闭输入文件和发布音频输出资源。

释放(误判率);释放(美联社);

使用一个halfband杀害多人者和插入器来实现双通道滤波器组。这个例子使用一个音频文件输入和显示滤波器组输出的功率谱从输入之间没有显著性差异。

请注意:audioDeviceWriter系统不支持对象™在MATLAB在线。金宝app

设置音频文件阅读器和音频设备的作家。构建IIR halfband杀害多人者和插入器。最后,建立了频谱分析仪显示滤波器组的输入和输出的功率谱。

房颤= dsp.AudioFileReader (“speech_dft.mp3”,“SamplesPerFrame”,1024);美联社= audioDeviceWriter (“SampleRate”,AF.SampleRate);filterspec =“筛选器顺序和过渡宽度”;订单= 51;TW = 2000;IIRHalfbandDecim = dsp.IIRHalfbandDecimator (“规范”filterspec,“FilterOrder”订单,“TransitionWidth”TW,“SampleRate”,AF.SampleRate);IIRHalfbandInterp = dsp.IIRHalfbandInterpolator (“规范”filterspec,“FilterOrder”订单,“TransitionWidth”TW,“SampleRate”AF.SampleRate / 2,“FilterBankInputPort”,真正的);SpecAna =简介(“SampleRate”AF.SampleRate,“PlotAsTwoSidedSpectrum”假的,“ShowLegend”,真的,“ChannelNames”,{输入信号的,过滤后的输出信号的});

一次读取音频1024个样本。滤波器的输入得到低通和高通子带信号的两倍。这是分析滤波器组。使用halfband插入器合成滤波器组。显示正在运行的功率谱的音频输入和输出合成滤波器组。输出。

~结束房颤(AF) audioInput = ();(xlo xhigh] = IIRHalfbandDecim (audioInput);audioOutput = IIRHalfbandInterp (xlo xhigh);spectrumInput = [audioInput audioOutput];SpecAna (spectrumInput);美联社(audioOutput);结束释放(AF);释放(美联社);释放(SpecAna);

创建一个halfband杀害多人者为数据44.1千赫采样。使用一个最小订单设计过渡宽度2 kHz和阻带衰减的60分贝。

IIRHalfbanddecim = dsp.IIRHalfbandDecimator (“规范”,“过渡宽度和阻带衰减”,“TransitionWidth”,2000,“StopbandAttenuation”现年60岁的“SampleRate”44.1 e3);

滤波器双通道输入低通和高通滤波部分波段。

x = randn (1024 2);[ylow, yhigh] = IIRHalfbanddecim (x);

算法

全部展开

引用

[1]朗,M。Allpass滤波器的设计和应用。IEEE信号处理。9号46卷,1998年9月,页2505 - 2514。

[2]哈里斯F.J.多重速率的通信系统的信号处理。普伦蒂斯霍尔。2004年,页208 - 209。

[3]徽章,菲利普。,Sanjit K. Mitra, and P. P. Vaidyanathan. "The Digital All-Pass Filter: A Versatile Signal Processing Building Block."IEEE学报》上。第一卷。76年,1988年,页19-37。

扩展功能

版本历史

介绍了R2015b