2012-03-15 62 views
5

我在matlab中编写了一个研究项目,它使用了很多我不想用C++重新实现的函数,所以我正在寻找库来处理这些函数。我需要的功能有:(按重要性排序)用于信号处理的C++库

  1. 希尔伯特变换
  2. 矩阵功能(行列式,逆,乘...)
  3. 查找多项式的根(为度大于5)
  4. FFT
  5. 卷积
  6. 相关性(在Matlab xcorr)
+0

你有没有试过寻找这些你自己呢?你发现了什么? – 2012-03-15 15:13:23

+0

这些都是标准的数字例程,谷歌应该通过实施,开放源代码,商业广告和其间的一切来压倒你。 As @ Li-aung Yip问道 - 你发现了什么? – 2012-03-15 15:20:20

+0

'C中的数字食谱可能包含你想要的大部分... – 2012-03-15 15:22:08

回答

2

一旦你得到了你可以收工一切节省数2和3

的线性代数要求可以用PETSc的www.mcs.anl.gov/petsc/这FFTW支持满足的FFT。

我不知道你将如何去寻找根。你可能必须自己编写代码(平分,牛顿的方法等),但它是目前实现上最容易实现的目标。

4

我不了解其中大部分,但FFTW是“西方最快的傅里叶变换”。它用于fft()的MATLAB实现中。

2

我不确定可用的库,但如果您已经有用matlab编写的函数,还有另一种选择。

如果你编译matlab functions to a dll它们可以通过C++程序调用。这将允许您访问您已有的matlab函数而无需重写。