【问题标题】:Create .wav audio histogram in Python [closed]在 Python 中创建 .wav 音频直方图 [关闭]
【发布时间】:2019-02-22 14:05:35
【问题描述】:

我已经为一个图像文件实现了一个直方图创建程序。 我可以在 Python 中为 .wav 格式的音频文件创建直方图吗? 这可能吗,如果是的话,有什么指针吗?

【问题讨论】:

  • 到目前为止你尝试过什么?请看how to ask。
  • 如果您设法为图像创建直方图,我相信您也可以为音频信号创建直方图。当你尝试它时,究竟是什么问题?
  • 这当然是可能的,但是您可能想澄清您要通过此实现的目标。我没有看到单个样本的直方图有太多用途(可以在图像的单个像素上完成),但音频包络的直方图可能更有用。
  • @SleuthEye 我想在水印中使用音频的直方图,这是我学术课程的一部分。

标签: python histogram signal-processing wav


【解决方案1】:

@ Bhavneet Sharma 可以获得 .wav 音频文件的直方图。请找到下面编写的代码以及给定代码的输出图片。希望这会对您有所帮助。

import numpy as np
import matplotlib.pyplot as plt

rate, data = wavfile.read('test3.wav') # reading wave file.
print ('All_data =',data)
print('Number of sample in DATA =',len(data))

c=data[0:499]             # reading first 500 samples from data variable with contain 200965 samples.
print('Number of sample in C =',len(c))


plt.hist(c, bins='auto')  # arguments are passed to np.histogram.
plt.title("Histogram with 'auto' bins")
plt.show()

如果它适合你。请不要错过投票答案。谢谢。

【讨论】:

  • 如果我需要 2500 个样本而不是 200965 个样本,我可以根据需要制作多个样本吗?
  • @Bhavneet Sharma 200965 是我的 .wav 文件的样本总数,我通过索引 [0:499] 从中提取了前 500 个样本。如果您想要来自 200965 的第一个 2500 个样本,那么您可以写 [0:2499] 而不是 [0:499]。感谢您的投票。如果您需要更多帮助,请告诉我。
  • 我如何(随机选择)选择三个连续的 bin 及其编号?
  • @Bhavneet Sharma 能否解释更多细节。我没有得到你的问题。
  • 根据上面给出的变量名和数组,它希望这个“data[a:a+3:1]”是“a”是你要选择的变量号。
猜你喜欢
  • 1970-01-01
  • 2021-09-25
  • 2014-07-09
  • 2014-03-19
  • 2022-01-21
  • 1970-01-01
  • 1970-01-01
  • 2019-08-14
相关资源
最近更新 更多