全新 Maix 系列产品 MaixCAM 已上线, 全新 MaixPy 功能更丰富,性能更强大,软件更易用,文档更全面!x

FFT运算

FFT快速傅里叶变换模块,对输入数据进行傅里叶变换并返回相应的频率幅值, FFT快速傅里叶运算可以将时域信号转换为频域信号

一、模块函数#

1.1. 运算函数#

输入时域数据并进行傅里叶变换

from maix import FFT
res = FFT.run(data, points, shift)

1.1.1. 参数#

  • data: 输入的时域数据,bytearray 类型

  • points: FFT运算点数,仅支持64, 128,256和512点

  • shift: 偏移,默认为0

1.1.2. 返回值#

res: 返回计算后的频域数据,以 list 类型呈现,该列表有 points 个元组,每个元组有 2 个元素,第一个元素为实部,第二个为虚部

1.2. 频率函数#

FFT

res = FFT.freq(points, sample_rate)

1.2.1. 参数#

  • points: 计算点数

  • sample_rate: 采样率

1.2.2. 返回值#

res : 返回一个列表,该列表存放的进行运算后后所有频率点的频率值

1.3. 幅值函数#

用于计算 FFT 运算后的各个频率点的幅值,目前用作测试,用户可以自己在python自行写幅值处理函数

amp = FFT.amplitude(FFT_res)

1.3.1. 参数#

FFT_res: 函数 run 运行后的结果

1.3.2. 返回值#

res : 返回一个列表,该列表存放了各个频率点的幅值

1.4. 例程#

采集声音并进行 FFT 运算,将运算后的数据在屏幕上显示为柱状图: demo_fft_spectrum

效果:

Related Issues not found

Please login GitHub to create issue