音频特征(2):时域图

时域图

概述

在学习音频的采样时,一时间犯了迷糊:
音频波形图的横坐标究竟表示的是什么,是时间?是采样点?
采样频率又是什么?采样又是采的什么?
在这里插入图片描述(在学习采样之前,一直不太理解音频的波形为啥长这个样——波形图不应该是一条线么,现在才明白是采样点太密集了!把波形图进行放大就能看到一个个样本点组成的波形了)

先从音频的波形表示开始吧,之前对音频的频域图做了总结,忽略了时域图波形,现在补起。

在这里插入图片描述
上图(由Audacity绘制)即为音频的**(时域)波形图**,横轴时间纵轴振幅,简单明了。

可是问题来了,文章第一幅图的横坐标是 sample ,这个也算是时域图?

转转一圈才发现,原来有了采样率就代表知道了时间!

有了采样率就知道了时间!
有了采样率就知道了时间!
有了采样率就知道了时间!

采样率表示间隔多长时间采样一次,其定义为每秒从连续信号中提取并组成离散信号的采样个数

比如 16000Hz 的采样率指的就是计算机每秒钟能采集16000个信号样本,因此,
横坐标为sample的波形图,简单转换一下(sample/f)就能变为横坐标为时间的波形图!

如果还是不能理解采样采样率可以查看:“声音”背后的原理(2):采样、量化和编码

小结

声音其实是一种能量波,因此也有频率振幅的特征,频率对应于时间轴线,振幅对应于电平轴线。

波是无限光滑的,弦线可以看成由无数点组成,由于储存空间是相对有限的,数字编码过程中,必须对弦线的点进行采样。

由于人耳能听到的音频频率是有限的(在20Hz~20kHz之间),根据奈奎斯特采样理论,为了保证声音不失真,采样频率应该在40kHz左右
这个定理还告诉我们,如果我们要精确的记录一个信号,我们的采样频率必须大于等于音频信号的最大频率两倍,记住,是最大频率。

关于时域图和频域图的对比,请查看:
音频特征(2):时域图、频谱图、语谱图(时频谱图)

参考:

  1. 科普常识:常用音频参数解析
  2. 数字信号处理与音频处理(使用Audition)——来自已逝去大神的博客
  3. 零、信号处理基础知识快速介绍(前) - Tux ZZ的文章 - 知乎
  4. 使用wavread读取一段音频后怎么画出横坐标是时间的波形图
  5. 百度百科:采样频率
  • 6
    点赞
  • 34
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
如果是片的时域和频域,可以通过以下步骤进行转换: 1. 对片进行傅里叶变换(FFT)得到频域。可以使用Python中的numpy.fft库来进行转换。 2. 对频域进行逆傅里叶变换(IFFT)得到时域。同样可以使用numpy.fft库来进行转换。 注意事项: - 对于彩色像,需要将每个颜色通道分别进行傅里叶变换和逆傅里叶变换。 - 傅里叶变换得到的频域是复数,需要取模才能可视化。 - 频域的中心点代表直流分量(像的平均值),需要通过fftshift函数将中心点移动到像的中心。 - 逆傅里叶变换得到的时域也是复数,需要取实部才能可视化。 以下是示例代码: ```python import cv2 import numpy as np from matplotlib import pyplot as plt # 读取像 img = cv2.imread('image.jpg', 0) # 傅里叶变换 f = np.fft.fft2(img) fshift = np.fft.fftshift(f) magnitude_spectrum = 20 * np.log(np.abs(fshift)) # 频域可视化 plt.subplot(121), plt.imshow(img, cmap='gray') plt.title('Input Image'), plt.xticks([]), plt.yticks([]) plt.subplot(122), plt.imshow(magnitude_spectrum, cmap='gray') plt.title('Magnitude Spectrum'), plt.xticks([]), plt.yticks([]) plt.show() # 逆傅里叶变换 f_ishift = np.fft.ifftshift(fshift) img_back = np.fft.ifft2(f_ishift) img_back = np.abs(img_back) # 时域可视化 plt.subplot(121), plt.imshow(img, cmap='gray') plt.title('Input Image'), plt.xticks([]), plt.yticks([]) plt.subplot(122), plt.imshow(img_back, cmap='gray') plt.title('Image after LPF'), plt.xticks([]), plt.yticks([]) plt.show() ``` 其中,'image.jpg'为输入像的文件名。第一个subplot显示原始像,第二个subplot显示频域。第三个subplot显示逆傅里叶变换后的时域

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值