问题标签 [spectrogram]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2179 浏览

python - ValueError: 操作数不能与形状 (1024,) (1024,2) 一起广播

叹息,我知道这与其他几个问题相似,但我的问题是我不太了解 Specgram 函数在 Matlab 中是如何工作的。我的代码基于位于http://matplotlib.org/examples/pylab_examples/specgram_demo.html的这个示例:

但是,我需要读取一个 wav 文件,因此我将其更改为:

作为回报,我收到ValueError: operands could not be broadcast together with shapes (1024,) (1024,2). 我在这里不明白什么?

编辑:完整追溯:

0 投票
0 回答
817 浏览

matlab - 从 MATLAB 频谱图中删除频率区域

假设我有以下频谱图:

15 秒信号的频谱图

我想做的是将高于一定能量水平的区域涂黑,例如 -110 dB - 所以所有红色,黄色和绿色部分。在这种情况下,变黑是指下拉到零或-Inf。我正在跟踪这个边界,我想看看在某些条件下跟踪的执行情况如何,这将有助于我将其可视化。此操作的结果将是接近 40 kHz 的所有内容都将是黑色或深蓝色,而频谱图的其余部分将保持不变。有没有一种简单的方法可以在不过滤的情况下做到这一点?一般来说,是否有一个图像处理功能可以让你以任何你喜欢的方式操纵能量值?谢谢

0 投票
1 回答
3482 浏览

python - 将麦克风数据转换为频谱

我正在尝试创建一个频谱图程序(在 python 中),它将实时分析和显示来自麦克风输入的频谱。我正在使用模板程序从这里录制音频:http: //people.csail.mit.edu/hubert/pyaudio/#examples(录制示例)

这个模板程序工作正常,但我不确定从该data = stream.read(CHUNK)行返回的数据的格式。我对这个程序中使用的 .wav 格式进行了一些研究,但我找不到实际数据字节本身的含义,只是 .wav 文件中元数据的定义。

我知道这个程序使用 16 位样本,并且“块”存储在 python 字符串中。我希望有人可以帮助我准确理解每个样本中的数据代表什么。即使只是指向此信息来源的链接也会有所帮助。我尝试使用谷歌搜索,但我认为我对术语的了解不足以准确搜索。

0 投票
1 回答
3374 浏览

matlab - 从图形编辑器生成 Matlab 绘图代码

我正在 Matlab 中绘制频谱图,并且一直在图形编辑器中手动编辑轴属性、颜色图和其他一些内容(“编辑 > 颜色图或轴属性...”)。

有没有办法生成/查看从图形编辑器创建绘图的代码?我可以/应该挖掘更多,看看调用是什么来显示/修复颜色条和颜色图,但是如果能准确地看到我通过图形编辑器编辑它的代码,那就太好了。这可能吗?

0 投票
2 回答
3670 浏览

android - 在android中绘制音频文件的频谱图

我正在开发一个 Android 应用程序,我需要在其中创建一个频谱图(它是声音中频率频谱随时间变化的视觉表示)。我有一个音频文件并使用 FFT 在频域中获取信号,现在我需要绘制频谱图。我需要一个 API 来帮助我绘制这个图表,看起来像 Matlab 中的类似图表。有什么建议吗?

0 投票
1 回答
275 浏览

plot - qwtspectrogram 轴调整区域而不是像素

嗨,我正在使用 qwtspectrogram 来绘制我的数组数据,但我遇到的问题是缩放.. qwt 比例分布在间隔 x 和 y 上,轴取决于像素。例如,如果我有一个 (500x500) 的数据集向量并且我想为 500mm x500mm 绘制它是完美的,因为它是在像素上平移的,但是如果我想为 300mmx300mm 绘制 500x500 的点数它是一团糟,它显示在情节 500x500 我知道我必须管理 x 和 y 轴,但我不知道该怎么做。我设法玩了一点,在 250mmx250mm 的区域显示 500x500,但不能为其他人做。我的代码如下所示

简而言之,我对不同区域有相同数量的像素,但我在图中有相同的轴表示。

0 投票
1 回答
14336 浏览

python - Matplotlib 频谱图强度图例(颜色条)

我正在使用 matplotlib 的specgram函数来生成频谱图。我试图在频谱图的右侧包含一个颜色条,以指示 dB 到颜色的映射。

但由于某种原因,颜色条指示的 dB 没有意义。

也许我没有正确生成颜色条?也许我需要将一些参数传递给specgram?

我生成的信号是以 32Khz 采样的 1Khz、2Vpp 正弦波。

我期望频谱图上的深红色峰值对应于 0dB(意味着 +1V 是我的参考)

有人知道我的方法有什么问题吗?

这是我得到的频谱图:

结果图

0 投票
1 回答
2829 浏览

matlab - 如何在 MATLAB 中绘制非归一化频谱图?

我想在 MATLAB 中绘制一个非归一化的频谱图。我的输入信号是 y,采样率为 16KHz,每秒 8 位。如何以频率而不是归一化频率绘制其频谱图?

0 投票
0 回答
1501 浏览

python - python中的小波变换频谱图

我正在寻找一个在 python 中使用小波变换生成频谱图的函数,类似于pylab.specgram但使用 DWT。有人知道这样的事情吗?

0 投票
2 回答
2384 浏览

matlab - 使用具有保持功能的 Matlab 绘制频谱

假设我已经成功生成了一个单面功率谱,如下所示:

现在我想在第一个图之上绘制第二个图:

最后,我对信号进行 LPC 分析并计算频率响应。频率响应应绘制在功率谱的顶部,因此:

为了简单起见,假设所有参数都正确给出,我应该如何编写绘图函数才能正确显示频率响应?一个简单的 plot(f) 不起作用。

有人可以解释为什么吗?谢谢