文档帮助中心文档
音频信号和听觉谱图的波峰
佳洁士= spectralCrest (x, f)
波峰= spectralCrest (x, f,名称,值)
[波峰,spectralPeak, spectralMean] = spectralCrest (___)
例子
佳洁士= spectralCrest (x,f)返回信号的波峰,x随着时间的推移。函数如何解释x取决于形状f.
佳洁士= spectralCrest (x,f)
佳洁士
x
f
佳洁士= spectralCrest (x,f,名称,值)使用一个或多个指定选项名称,值对参数。
佳洁士= spectralCrest (x,f,名称,值)
名称,值
[佳洁士,spectralPeak,spectralMean) = spectralCrest (___)返回谱峰和谱均值。
[佳洁士,spectralPeak,spectralMean) = spectralCrest (___)
spectralPeak
spectralMean
全部折叠
读入音频文件,使用默认参数计算波峰,然后绘制结果。
[audioIn, fs] = audioread (“Counting-16-44p1-mono-15secs.wav”);佳洁士= spectralCrest (audioIn, fs);t = linspace(0,大小(audioIn 1) / fs,大小(波峰,1));情节(t,嵴)包含(“时间(s)”) ylabel (“佳洁士”)
读入一个音频文件,然后计算mel声谱图使用melSpectrogram函数。
melSpectrogram
[audioIn, fs] = audioread (“Counting-16-44p1-mono-15secs.wav”);(年代,cf) = melSpectrogram (audioIn fs);
计算mel谱图随时间变化的波峰。策划的结果。
佳洁士= spectralCrest(年代,cf);t = linspace(0,大小(audioIn 1) / fs,大小(波峰,1));情节(t,嵴)包含(“时间(s)”) ylabel (“佳洁士”)
读入音频文件。
[audioIn, fs] = audioread (“Counting-16-44p1-mono-15secs.wav”);
计算功率谱随时间的波峰。计算具有25 ms重叠的50 ms汉明窗的峰值。使用范围从62.5 Hz到fs/2为峰值计算。策划的结果。
fs
波峰= spectralCrest (audioIn fs,...“窗口”汉明(圆(0.05 * fs)),...“OverlapLength”而圆(0.025 * fs),...“范围”, 62.5, f / 2);t = linspace(0,大小(audioIn 1) / fs,大小(波峰,1));情节(t,嵴)包含(“时间(s)”) ylabel (“佳洁士”)
创建一个dsp。AudioFileReader对象以逐帧读取音频数据。创建一个dsp。SignalSink记录谱峰计算。
dsp。AudioFileReader
dsp。SignalSink
fileReader = dsp。AudioFileReader (“Counting-16-44p1-mono-15secs.wav”);记录器= dsp.SignalSink;
在音频流循环中:
读入一帧音频数据。
计算音频帧的波峰。
记录光谱波峰,以便日后绘图。
为了只计算给定输入帧的谱峰,指定一个与输入帧样本数目相同的窗口,并将重叠长度设为零。
绘制记录的数据。
而~isDone(fileReader) audioIn = fileReader();佳洁士= spectralCrest (audioIn fileReader。SampleRate,...“窗口”汉明(大小(audioIn,1)),...“OverlapLength”, 0);记录器(峰值)结束情节(logger.Buffer) ylabel (“佳洁士”)
使用dsp。AsyncBuffer如果
dsp。AsyncBuffer
音频流循环的输入每帧有一个可变的采样。
输入到你的音频流循环有一个不一致的采样每帧与分析窗口spectralCrest.
spectralCrest
你想要计算重叠数据的波峰。
创建一个dsp。AsyncBuffer对象,重置日志记录器,并释放文件读取器。
浅黄色= dsp.AsyncBuffer;重置(logger)释放(fileReader)
指定光谱波峰计算为50毫秒帧25毫秒重叠。
fs = fileReader.SampleRate;samplesPerFrame =圆(fs * 0.05);samplesOverlap =圆(fs * 0.025);samplesPerHop = samplesPerFrame - samplesOverlap;赢得=汉明(samplesPerFrame);而~isDone(fileReader) audioIn = fileReader();写(浅黄色,audioIn);而迷。NumUnreadSamples >= samplesPerHop audioBuffered = read(buff,samplesPerFrame,samplesOverlap); crest = spectralCrest(audioBuffered,fs,...“窗口”,赢了,...“OverlapLength”, 0);记录器(峰值)结束结束发行版(fileReader)
情节(logger.Buffer) ylabel (“佳洁士(Hz)”)
输入信号,指定为矢量、矩阵或三维阵列。函数如何解释x取决于形状f.
数据类型:单|双
单
双
以Hz为单位的采样率或频率矢量,分别指定为标量或矢量。函数如何解释x取决于形状f:
如果f是一个标量,x被解释为时域信号,并且f为采样率。在这种情况下,x一定是实向量或实矩阵。如果x指定为一个矩阵,列被解释为单独的通道。
如果f是一个矢量,x被解释为频域信号,并且f被解释为频率,以Hz表示,对应于x.在这种情况下,x一定是真的l——- - - - - -米——- - - - - -N数组,l在给定频率的谱值的数目是多少f,米是个别光谱的数量,和N为通道的数量。
的行数x,l,必须等于的元素数f.
指定可选的逗号分隔的对名称,值参数。的名字参数名和价值为对应值。的名字必须出现在引号内。可以以任意顺序指定多个名称和值对参数Name1, Value1,…,的家.
的名字
价值
Name1, Value1,…,的家
“窗口”,汉明(256)
请注意
下列名称-值对参数适用于x是一个时域信号。如果x是频域信号,则忽略名称-值对参数。
“窗口”
rectwin(圆(f* 0.03))
窗口应用于时域,指定为逗号分隔对,由“窗口”一个实向量。向量中的元素个数必须在范围[1,大小(x, 1)].向量中的元素数也必须大于OverlapLength.
大小(x, 1)
OverlapLength
“OverlapLength”
圆(f* 0.02)
相邻窗口之间重叠的样本数,指定为由逗号分隔的对组成“OverlapLength”和一个范围为[0,大小(窗口, 1)).
大小(窗口, 1)
窗口
“FFTLength”
元素个数(窗口)
用于计算加窗输入样本DFT的箱数,指定为逗号分隔对,由“FFTLength”一个正的标量整数。如果未指定的,FFTLength属性中的元素数量默认为窗口.
FFTLength
“范围”
[0,f/ 2)
以Hz为单位的频率范围,指定为逗号分隔对,由“范围”一个两元素的行向量在[0,f/ 2)。
“SpectrumType”
“权力”
“级”
谱类型,指定为逗号分隔对,由“SpectrumType”和“权力”或“级”:
“权力”——计算单边功率谱的谱峰。
“级”——计算单边幅度谱的谱峰。
数据类型:字符|字符串
字符
字符串
谱峰,以标量、向量或矩阵的形式返回。每一行的佳洁士对应于窗口的谱峰x.每一列的佳洁士对应一个独立的通道。
谱峰,以标量、矢量或矩阵的形式返回。每一行的spectralPeak对应于窗口的谱峰x.每一列的spectralPeak对应一个独立的通道。
光谱平均值,以标量、向量或矩阵的形式返回。每一行的spectralMean对应于窗口的谱峰x.每一列的spectralMean对应一个独立的通道。
谱峰的计算方法如[1]:
佳洁士 = 马克斯 ( 年代 k ∈ [ b 1 , b 2 ] ) 1 b 2 − b 1 ∑ k = b 1 b 2 年代 k
在哪里
年代k光谱值在bin处吗k.
b1和b2是在箱子里的波段边缘,在上面计算光谱波峰。
[1]彼得斯,G。“在CUIDADO项目中,用于声音描述(相似性和分类)的大量音频功能集。”技术报告;法国巴黎,2004年。
spectralFlatness|spectralSkewness|spectralSpread
spectralFlatness
spectralSkewness
spectralSpread
您有这个示例的修改版本。您想打开这个示例与您的编辑吗?
你点击一个链接对应于这个MATLAB命令:
通过在MATLAB命令窗口中输入命令来运行命令。Web浏览器不支持MATLAB命令。金宝app
选择一个网站,在那里获得翻译的内容,并看到当地的活动和优惠。根据您的位置,我们建议您选择:.
你也可以从以下列表中选择一个网站:
选择中国网站(中文或英文)以获得最佳网站性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。
与当地办事处联系
得到审判现在