问题标签 [spectral-density]
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.
matlab - 将 psd 绘图更改为以 Hz 而非 kHz 显示频率
在 MATLAB 中,我似乎无法弄清楚如何让 dspdata.psd 函数以赫兹而不是赫兹为 x 轴显示我的功率谱密度图。如果有人知道解决方案,将不胜感激,谢谢!
matlab - 同一图中的多个 PSD - Matlab
我打算在同一张图上绘制多个功率谱密度。我正在使用以下内容来绘制单个信号的功率谱密度。
但是,如果我要在同一个频谱分析仪中绘制另一个信号,使用 hold on 似乎没有帮助
有人可以指导我如何处理这个问题。
编辑:这是我的代码片段:
现在我需要一种方法来在同一个图中绘制两者的 PSD tx
。rx
signal-processing - 来自加速度计数据的功率谱密度
我有一个加速度计数据,即 AccX、AccY 和 AccZ。
我正在寻找一种算法来从这些数据中计算功率谱密度。我知道以下内容:
其中“s”是输入信号,fft 是快速傅立叶变换。
我需要知道这s
应该是加速度时间序列还是位置时间序列?
matlab - Python计算一个数组的PSD和CSD
我在信号分析中遇到了一些问题。我在脚本 (x) 中加载了一个形状为 x(68, 815) 的数组。68 代表阵列中的信号数量。所以我想对它执行PSD和CSD。CSD:x[0] 和 x[1] .... x[0] 和 x[67] 以及以下... x[1] 和 x[1] .... x[1] 和 x[67 ] 等等
但不知何故,计算值符合我的预期,在进一步计算中使用它们会导致令人不安的结果。谁能找到我的错误?我完全迷路了。只见林不见树。
python - 在分析弹拨吉他弦时使用 PSD 是否合适?
我正在使用 python 2.7 来比较吉他刺痛的音调差异。我在dsp.stackexchange.com上问过同样的问题,但运气不佳,所以我想我也会在这里问。
我发现在 matplotlib 中,有一些很棒的内置功能,例如 matplotlib.mlab.magnitude_spectrum 和 matplotlib.mlab.psd
幅度谱函数似乎很简单,因为它是信号的 FFT,显示每个特定的谐波。然而,在比较各种吉他弦时,很难确定每个峰值进行比较。PSD 函数提供了非常漂亮的平滑图形,非常适合进行明显的视觉比较。
我的理解是 PSD 对随机信号很有用,但不一定对已知信号有用。这是真的?有什么理由我不应该使用 PSD 来比较吉他弦吗?
下面是使用 PSD 和幅度谱的 1 秒吉他拨弦效果:
请注意,这些是同一弦的弹奏,而不是不同的弦。在比较各种字符串之前,我试图确保我的弹奏是一致的。
r - 在 R 中绘制 PSD
我正在制作我用水听器在水下制作的一分钟白噪声录音的 PSD 图。我有大约 12 个文件要分析。我制作了这些图,但我的教授希望我对数据进行对数转换并绘制它。我是 R 新手,不确定我将如何去做。任何帮助表示赞赏。
matlab - 对一组信号使用 pwelch:一些问题(Matlab)
我想在一组信号上使用 pwelch,我有一些问题。
首先,假设我们有 32 个(EEG)信号,持续时间为 30 秒。采样频率是fs=256
样本/秒,因此每个信号的长度为 7680。我想用pwelch
它来估计这些信号的功率谱密度(PSD)。
问题 1:
根据pwelch
的文档,
pxx = pwelch(x) 返回使用 Welch 的重叠段平均估计器找到的输入信号 x 的功率谱密度 (PSD) 估计值 pxx。当 x 是向量时,它被视为单个通道。当 x 为矩阵时,每列独立计算 PSD,并将其存储在 pxx 的对应列中。
但是,如果调用pwelch
如下
结果pxx
是 size 1025x1
,而不是1025x32
我所期望的,因为文档指出,如果 x 是矩阵,则 PSD 会为每一列独立计算并存储在 pxx 的相应列中。
问题 2:
假设我克服了这个问题,并且我独立计算了每个信号的 PSD(通过应用于pwelch
的每一列ch_signals
),我想知道这样做的最佳方法是什么。假设该信号是一个 30 秒的信号,具有采样频率fs=256
,我应该如何调用pwelch
(使用什么参数?)以使 PSD 有意义?
问题 3:如果我需要将 32 个信号中的每一个拆分为窗口并将 pwech 应用于每个窗口,那么最好的方法是什么?假设我想将每个 30 秒的信号分成 3 秒的窗口,重叠 2 秒。我应该如何调用pwelch
这些窗口中的每一个?
r - 在 R 中进行功率谱分析时出错
我正在尝试使用臭氧数据进行光谱密度分析,但遇到了错误:
ts(tser, frequency = x.fsamp, start = x.start) 中的错误:“ts”对象必须有一个或多个观察值
我不确定问题是什么,因为听起来文件中的条目数有问题,但文件肯定不是空的。什么可能导致这个问题?代码如下:
c# - 从 FFT 访问处理后的值
我正在尝试使用Lomont FFT来返回复数以使用 c# 构建频谱图/频谱密度图。
我无法理解如何从类中返回值。这是我迄今为止汇总的代码,它似乎正在运行。
我不清楚的是,如何将 Lomont FFT 实现中的值返回/访问回我的应用程序(控制台)?
作为 c# 开发的新手,我想我可能缺少了解如何从 Lomont 类的实例中检索已处理值的基本方面,或者甚至可能错误地调用它。
我一直在寻找如何执行此操作的代码片段或解释,但到目前为止,我没有找到任何我理解或解释我所面临问题的特定方面的内容。任何指导将不胜感激。
上面代码中记录的数组中保存的结果子集data
可以在下面找到,根据我目前的理解,它似乎是有效的:
我实际上想做什么?(看法)
我希望将波形文件加载到控制台应用程序中,并将频谱图/频谱密度图/图像作为 jpg/png 返回以进行进一步处理。
我正在阅读的波形文件是单声道格式
更新 1
根据使用的 FFT,我收到的结果略有不同。
使用 RealFFT
RealFFT 的部分结果
使用 FFT
FFT的部分结果: