fft相关内容

使用傅立叶域卷积复制MATLAB的`conv2()`

我想拍摄两个图像,并使用2D FFT在Matlab中将它们卷积在一起,而无需使用 conv2 函数.但是,对于如何正确填充矩阵并为卷积做准备,我不确定. 数学运算如下: A * B = C 在上面,*是卷积运算符( Wikipedia链接). 下面的Matlab程序显示了填充和不填充矩阵之间的区别.我怀疑不对矩阵进行填充会导致圆形卷积,但我想执行线性卷积而不会产生混叠. ..
发布时间:2021-05-06 20:57:05 其他开发

本征FFT库

我正在尝试通过FFTW后端使用Eigen不支持的FFT库.具体来说,我想进行2D FFT.这是我的代码: void fft2(Eigen :: MatrixXf * matIn,Eigen :: MatrixXcf * matOut){const int nRows = matIn-> rows();const int nCols = matIn-> cols();本征:: FFT英尺 ..
发布时间:2021-05-03 20:11:19 其他开发

如何在拟合过程中向曲线添加权重而不向数据点添加权重?我要使用什么导入/功能?

我尝试了scipy.optimize import curve_fit,但它似乎只改变了数据点.我想在Ycurve拟合期间根据我的数据点残差(加权最小的平方)添加1/Y ^ 2权重.我不确定如何定位yfit而不是ydata,或者我是否应该使用其他东西?任何帮助将不胜感激. xdata = np.array([0.10,0.10,0.10,0.10,0.10,0.10,1.12,1.12,1.1 ..
发布时间:2021-04-27 20:34:16 Python

如何快速获得cufftcomplex的幅度和相位

我有一个cufftcomplex数据块,它是cuda fft(R2C)的结果.我知道数据被保存为具有实数和图像编号的结构.现在我想通过一种快速的方法(不是循环)来获取每个复杂元素的振幅= sqrt(R * R + I * I)和相位= arctan(I/R).有什么好办法吗?或任何图书馆都可以做到这一点? 解决方案 由于 cufftExecR2C 对GPU上的数据进行操作,因此结果已经在G ..
发布时间:2021-04-27 20:10:35 其他开发

如何在一维信号中应用相位相关?

对数极坐标变换通常在具有相位相关性的图像中使用傅里叶变换来估计旋转和平移等.但是,我很少混淆如何将其应用于音频信号.我正在尝试通过对数极坐标变换(LPT)和相位相关来估计两个音频信号之间的时移.我使用 https://en.wikipedia.org/wiki/Log-polar_coordinates 应用了LPT在音频信号和绘图仪中使用带有polar(theta,rho)的matlab,直到这 ..
发布时间:2021-04-24 20:36:09 其他开发

计算FFT相关系数

我想使用 AForge 2.2.5 计算2个声音样本的相关系数. 我从 参考: https://dsp.stackexchange.com/questions/741/为什么要在进行傅立叶变换之前先将i-zero-pad-a-signal https://dsp.stackexchange.com/questions/1919/ficiently-calculating-aut ..
发布时间:2021-04-24 20:35:16 C#/.NET

在Matlab中将朴素逆滤波器与维纳滤波器进行反卷积的比较

我目前正在尝试将简单的逆滤波器与维纳滤波器进行比较,以使用Matlab进行反卷积.我的起始信号是 exp(-t ^ 2),并且将其与-0.5至.5时间不为零的rect进行卷积.我正在引入幅度在-0.5至.5之间的噪声. 定义我的时域到频域映射: f = exp(-t ^ 2)=>Fs =矩形=>[Rc = f * s =>Cr =噪声(见上文)=>[R带有噪声的c变为:c = f * s ..
发布时间:2021-04-24 19:50:40 其他开发

使用librosa的STFT理解

我有一个音频样本,采样率为8khz,约为14秒.我正在使用librosa从该音频文件中提取一些功能. y,sr = librosa.load(文件名)stft = np.abs(librosa.stft(y,n_fft = n_fft))#file_length = 14.650022675736961 #sec#默认#n_fft = 2048#hop_length = 512#win_len ..
发布时间:2021-04-12 19:37:01 Python

如何在python中从声音转换为频谱然后回到声音?

如何获取一个wav文件,每隔几毫秒将其转换为一个频率强度数组,对该数组进行操作,然后将该新数组转换回一个wav文件. 有没有一个看起来像这样的库 wav_data = library.read_wav('aoeu.wav')#[0,3,201,...等等]频谱= library.get_spectrum(wav_data)#[[0,0,0,.2,0,.7,...等等],#[0,0,0,. ..
发布时间:2021-04-12 19:33:50 Python

即使应用恒定音调,FFT频率桶幅度也会变化

我正在尝试使用FFT解码摩尔斯电码,但是我发现,当我检查我感兴趣的结果频率仓/桶时,即使呈现恒定的音调,绝对值也有相当大的变化.这使我无法使用阈值附近的上升和下降来解码音频摩尔斯.我什至尝试了一个似乎无处不在的简单示例,但是它也有所不同...我无法弄清我做错了什么,而且我的数学还不够聪明,无法理解与FFT相关的所有公式.我现在一定有可能,但我不知道如何...任何人都可以帮忙吗? 解决方案 ..
发布时间:2021-04-05 19:42:09 移动开发

多维阵列上的PyFFTW性能

我有一个维度为(144,522720)的nD数组,我需要计算其FFT. PyFFTW似乎比numpy和scipy慢,这是不期望的. 我做错了什么吗? 下面是我的代码 import numpy import scipy import pyfftw import time n1 = 144 n2 = 522720 loops = 2 pyfftw.config. ..
发布时间:2020-11-04 18:31:43 Python

图像旋转和缩放频域?

我正在编写一些代码,以使用相位相关来恢复测试图像相对于模板的旋转,缩放和平移,现在,我可以在空间域中应用旋转和缩放,然后进行FFT,但这似乎效率不高-是否有可能直接在频域? 修改1: 好的,我遵循了user1816548的建议.即使图像的极性发生了奇怪的变化,我仍然可以得到模糊的,看起来合理的旋转角度,该角度是90o的倍数.不是90o的倍数的角度会给我很奇怪的结果. 修改2: 我将零填 ..
发布时间:2020-11-04 18:31:32 Python

如何从fft函数获取频率轴?

因此,我可能缺少明显的东西,但是我搜索了许多教程和文档,但似乎找不到直接的答案.如何找到在Python中执行fft的函数的频率轴(特别是scipy库中的fft)? 我试图获取原始的EMG信号,对其执行带通滤波器,然后执行fft来查看其余的频率分量.但是,我不确定如何找到准确的x组件列表.我目前正在处理的特定信号以1000 Hz采样,并有5378个采样. 是否只是创建一个从0开始到fft ..
发布时间:2020-11-04 18:31:07 Python

Keras / Tensorflow-Conv2d的傅立叶逐点乘法实现比空间卷积慢4倍

根据卷积定理,卷积在傅立叶域中变为点向乘法,并且在许多先前的工作中,由于将卷积运算转换为点向乘法运算而获得的增益已显示出进行傅里叶变换的开销被掩盖了类似于以下内容- https://arxiv.org/abs/1312.5851。 为了复制这一点,我试图用一个接受输入数据rfft的自定义层替换keras.layers.Conv2D()层(我先将数据的rfft馈入到模型以减少训练时间),初始化 ..
发布时间:2020-10-09 02:51:59 Python

Python:比较两个可能有噪音的音频文件

出于项目目的,我正在录制来自舞台附近不同区域的音频剪辑(波形文件).我需要检查源音频是否;即:使用从附近地方录制的音频,可以在舞台附近的位置上听到舞台上的声音. 更清楚地讲,我在舞台附近的地方有麦克风,并且在舞台和这些附近的地方有音频剪辑.如何检查来自舞台的声音是否已接收到附近的位置,或者如何理解来自舞台的声音正在干扰附近的地方? 解决方案 听起来像一个有趣的项目……提供了一种精确的 ..
发布时间:2020-09-13 22:19:30 Python

Android:查找音频输入的基本频率

因此,我一直在努力寻找最佳解决方案,以实时计算使用AudioRecord捕获的样本的基频. 我在这里围绕SO的一些示例进行了研究: 这个, 和这个是对我帮助最大的问题,但我仍然不完全了解他们将如何寻找基本频率.因此,我要寻找的是一个更详细的说明,该操作说明我需要执行什么操作才能找到具有样本的基本频率. 因此,我创建了一个AudioRecord: micData = new AudioR ..
发布时间:2020-06-26 12:56:03 Java开发