现在我正在对声音进行频谱分析,奇怪的是,使用Periodogram[]
绘制图形并不能得到与使用PeridogramArray[]
然后使用ListLinePlot[]
相同的结果。我有什么地方理解错了吗?
源代码:
test1 = Import["/Users/phillipchang/Desktop/sounds/test1.wav",
"SampledSoundList"]
Periodogram[test1]
ListLinePlot[PeriodogramArray[test1], PlotRange -> Automatic]
发布于 2013-10-21 15:41:10
你有没有可能使用立体声(或更好的)声音?
http://reference.wolfram.com/mathematica/ref/PeriodogramArray.html“对于多通道声音和图像对象,将返回每个通道的功率谱列表。”
http://reference.wolfram.com/mathematica/ref/Periodogram.html“周期图也适用于SampledSoundList对象。当应用于多声道声音对象时,它会绘制所有声道的功率谱。
点击“详细信息和选项”,阅读所有的详细信息。人们似乎经常跳过“细节和选项”。
我猜不出你的声音文件是什么,但如果你的声音文件不包含文件中存在的每个频率的整数倍周期,你也可以考虑使用窗口函数来最小化引入的伪像。
好的调试方法可能是构造一个具有整数个周期的单一纯正弦波的声音,让自己确信文件是正确的,然后在上面测试代码。调试直到光谱正确为止。然后向文件添加第二个频率,仍然是整数个周期,并重复。当所有这些都完成后,您可能已经消除了原始文件的问题。
https://stackoverflow.com/questions/19493648
复制相似问题