信号处理:有人可以向我解释不同类型的频谱图吗?

时间:2018-01-15 05:21:34

标签: signal-processing audio-processing librosa

我是信号处理的新手,我在谷歌上搜索了很多谱图的术语,但我找不到任何关于谱图类型差异的事情。任何人都可以帮我解释下面图片中的diffenrent谱图的定义和含义吗?谢谢!

spectrogram

P / s:那么谱图和色度之间的差异呢?什么时候使用色度?

chroma

2 个答案:

答案 0 :(得分:2)

色度和半音阶,大字!

Chroma 是 chroma feature 的快捷方式,指的是 chromatic scale,即钢琴的 7 个白键(C、D、E、F、G、A、B ) 和它们之间的 5 个黑键(sharpsflats)。虽然这听起来很重要,但没有什么可担心的,chroma features 是说notespitches 的炒作措辞, >半音阶是我们今天使用的普通西方音乐音阶。详细了解“chroma features analysis”。

enter image description here
半音阶的十二色度。 Source

这个半音音阶在键盘上自我重复,但每次从左到右(低音到高音)重复音阶时,第一个键(即 C)的实际频率加倍。这个 2/1 geometric interval 被称为 octave(来自八度、八度、八度白音,从音程开始键开始计数)。音符之间的所有 intervals 都以比率来衡量,例如 5 度音程(例如 C 到 G)等于 3/2,无论八度音程如何(以 Hz 为单位的实际频率差异随八度音程而增加)。了解用于 spectrograms(使用实际赫兹数表示包含在声学信号中的频率)和 chromagrams(相同但用音符名称替换赫兹)的 y 比例很重要: C、C♯、D、Eb、E、F、F♯、G、Ab、A、Bb、B).

在对图表进行解释后,您可以继续阅读半音阶。

频谱图

频谱图是 3D 表示,x 轴是时间,y 轴是频率,z 轴通常是幅度或功率。功率是振幅的平方。 Z 值由网格点 (x,y) 处像素的颜色表示,类似于地理地图,颜色表示高度。

任何轴,x、y 或 z 都可以设为 logarithmic,在此类对数标度中,decibelbel 的十分之一)标度。对于幅度,它对应于变换:dB(幅度)= 10 log (A/A0),其中 A0 是参考值,除非另有说明,否则为 1。系数 10 只是给出常见比率的整数值,例如加倍是 +3dB(而 log 2 实际上是 0.3)。由于功率比是幅度比的平方,功率的分贝值是两倍:dB(功率)=20 log(P/P0) 其中P0也是一个参考值,一般为1。

<块引用>

enter image description here

上图显示了频率 y (Hz) 在时间 x(未显示)的功率(z 为灰度级),以 dB 表示。

颜色相同:

<块引用>

enter image description here

下图是相同的,除了 y 标度是对数而不是线性,如果能量集中在低频(例如 1 kHz 以下),这更有意义:

<块引用>

enter image description here

下一张图是一样的。从标题看来,显示的是功率而不是振幅,但视觉上没有色差:

<块引用>

enter image description here

在下图中,“constant Q”标题可能意味着使用 constant-Q transform (CQT) 计算了功效值:

<块引用>

enter image description here

之前的所有图表都可能是 discrete Fourier transforms 的结果。可能已选择 CQT 以更准确地从信号中提取音符。事实上,下图中显示了相同的数据,但 y 用音符而不是频率标记:

<块引用>

enter image description here

它看起来像一个色谱图,但实际上不是,因为 y 延伸超过了一个八度音程。

色谱

色谱图是一种特定的光谱图,其中 y 轴和 z 值是特定的。首先通过一个半音间隔的频率段计算幅度或功率。

  • 色度音程:两个键之间的音程,白色或黑色,其比率等于 the 12th root of 2(作为八度音程,比率为 2/1,包含 12 个色度音程)。在音乐语言中也称为半音

所以结果是每次 x 的一组频率 bins。然后将来自不同八度音阶的相同音符(C、C#、D、Eb、E、F、...)的 bin 相加,结果最终只有 12 个八度音阶的 bin。

您可能想知道为什么要对八度音进行求和,从而丢失了实际的频率信息。它特定于音乐声音,即由共振设备产生的声音。当这种设备产生频率为 f 的声音时,它也会产生 f (2f, 3f, 4f) 倍数的声音,其振幅由其 musical timbre 强加。 F 及其倍数称为谐波。倍数 2、4、8 等实际上是与 f 相同的音符,处于不同的八度。将它们分组是有意义的。将其他谐波分组也很有意义,这些谐波也是精确的音符:这就是西方音阶的构建方式,12 个音符中的每一个都对应于 C 谐波,例如如果f为C频率,G频率为3f/2,即C谐波3的频率减去一个八度音程。这种结构允许形成和弦,并且是 harmony 的基础。

色谱图:

<块引用>

enter image description here

没有提到 z 轴代表什么,可能是相对于信号中的最大值(围绕音符 E)的幅度(或功率)。

最后一张图的不同之处在于 y 轴不显示信号音高,而是显示样本的 tempo(每分钟节拍数)。

温度图

<块引用>

enter image description here

尺度是对数的。颜色表示检测到此 BPM 数量的频率。因为有多个音符比一个时间短,所以检测到多个 BPM 值。音符以高于实际 BPM 的频率重复。通常用于执行分析的算法还提供最可能的 BPM,采用起始分布(例如 librosa)。

更多关于半音阶

过去只使用白键度数(这被追溯地称为 diatonic scale)。但是当古典歌手开始演唱为乐器制作的部分时,他们将音符转换成他们可以演唱的音域,伴奏的乐器必须比作曲家的乐谱略低或略高。

这叫做transposition(一个相关的概念是modulation)。然而,白键之间的频率间隔是不一样的:两个连续的白键弹奏相隔一定音程(E/F 和 B/C)的音符,被一个黑键隔开的白键弹奏两个音程间隔的音符。

所以如果我们想调高一个音程,C变成D,D变成E,E变成……等等,E+1处没有音符(F是E+1/2,G是E+1 /2+1)。如果我们想转置 2 个区间,问题就会出现在其他地方。

解决办法是加黑键,这样12个区间每一个都是1/2。半音阶就是这样出现的。

实际上这样的C#(C+1/2)应该高于C之上的1/2区间,并且应该有另一个比D之下1/2区间低一点的黑键,称为Db(D平坦的)。 C# 将用于某些移调,而 Cb 用于其他移调,以形成更好的共振 chords

然而,对于现代键盘,# 和 b 合并为一个键,使键盘可玩。共享密钥的名称是什么?这取决于。对于 C#/Db,这是 C#,但对于 A#/Bb,这是 Bb。其原因根源于和谐,可以追溯到平等气质使用之前。

在刻度的所有度数之间设置间隔的方式称为temperament,这种在间隔的正中间合并尖锐和平坦的选择是equal temperament。它使所有和弦都有点错误(inharmonic)。

音乐是一个理论和实践一直在发展(并且仍在发展)的领域,这给理解概念带来了很多困难。音阶是一个热门而动人的话题,因为没有办法用单一的气质使所有和弦都正确,有些和弦有特权,选择经常受到挑战和改变。没有遵循措辞(所以像“半音阶”这样的措辞意味着仍然使用 12 度西方音阶)。

答案 1 :(得分:0)

我相信您肯定会查看维基百科:https://en.wikipedia.org/wiki/Spectrogram

不要与光谱图名称混淆,它们可以通过它们代表的代码或它们的代表方式来命名。为了充分理解频谱图,您需要做很多阅读。从这开始: http://www.phon.ucl.ac.uk/courses/spsci/acoustics/week1-10.pdf

线性或对数表示线性或对数缩放。一些解释如下: http://manual.audacityteam.org/man/spectrogram_view.html

此处提到功率谱图示例。为此,您必须了解功率谱密度: https://www.mathworks.com/matlabcentral/answers/122472-how-to-get-the-power-spectral-density-from-a-spectrogram-in-a-given-frequency-range?s_tid=gn_loc_drop

常数Q是频域转换的时间,如下所述: https://en.wikipedia.org/wiki/Constant-Q_transform 它与FFT不同。

灰度就是使用灰色来更容易地观察光谱图

tempogram是包含音乐信号的音频速度的直观表示。这样做的工具箱的一个例子是: https://www.audiolabs-erlangen.de/resources/MIR/tempogramtoolbox/

色度是用于声学的技术术语,用于表示颜色&#39;这里解释的声音: &#39; http://acousticslab.org/psychoacoustics/PMFiles/Module05.htm#7b&#39; &#34;音高色度:特定音调的独特品质,将其与八度音中的其余音调分开。它描述了感知的差异&#39; /&#39;距离&#39;八度音程中的音高和由一个或多个完整八度音程分隔的音高的感知相同度。这反映在以下事实中:不同的音符名称(例如,C,D,E,F,G,A,B,C,D ......)在频率每增加2/1(即每个八度音程)时周期性地重复添加下标(例如C4)以指示该音调相对于某个参考音高有多高或多低。换句话说,共享相同音高色度的两个音符之间的数字下标差异(例如C4对C5)反映了两个音符之间的一个或多个八度音阶的音高差异。&#34;