我想知道是否存在针对正向和反向 Gabor 变换的高度优化的 C/C++ 库( Wikipedia link )。这与通常应用于图像的 Gabor 滤波器不同。该库可以是封闭的,也可以是 FOSS/开源的,但我更喜欢后者,因为我正在开发一个研究应用程序。
我正在实现 Seismic Inverse Q filtering 中的逆 Q 滤波算法书(见第 125 页)。作者似乎喜欢使用 Gabor 变换。
需要正变换和逆变换,因为一些运算是在频域信号上计算的,而逆变换用于计算离散时域信号。
最佳答案
据我所知,没有专门的库来计算 Gabor 变换(GT)。与连续小波变换 (CWT) 类似,GT 只能在一定程度上近似,因为它被定义为时间和频率连续函数。
但是,可以使用标准工具来获得 GT 的近似值。与 CWT 类似,通常的方法是在傅里叶空间中实现这些变换。 GT 和 CWT 本质上只是一个滤波器组。对于 GT,您将计算 FFT,乘以 GT 内核的傅里叶变换(它是以所需频带为中心的高斯变换),然后计算每个频带的逆 FFT。
this article 中描述了基于 IIR 滤波器组的 GT 的另一个良好近似。 。该方法也可以使用标准工具(MatLab、SciPy等)来实现
我很好奇,你的目标是什么科学应用?通常 CWT 是更好的选择,因为它尊重自然缩放行为并具有更高程度的对称性,特别是它在膨胀下保持不变。
关于c++ - C/C++ 中的正向和反向 Gabor 变换库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11237030/