在Matlab中应用cwt

时间:2015-10-25 17:40:07

标签: matlab gaussian wavelet differentiation

我正在尝试实现一种已在论文中描述的算法。它处理必须过滤和区分的加速度计数据。我的输入是一个向量(1列,多行)。

As described here

矢量必须使用高斯CWT与MatLab函数 cwt 进行区分。比例必须是'scale10'和wavelet'gaus1'。

当我尝试在MatLab中实现指令时,我输入以下内容:

    dudx=cwt(vector,'scale10','gaus1');        

这是我得到的错误:

    Undefined function 'sqrt' for input arguments of type 'char'.

    Error in cwt (line 278)
    coefs(ind,:) = -sqrt(a)*wkeep1(diff(wconv1(ySIG,f)),lenSIG);

因为它实际上应该与输入一起工作,我真的不知道我可以改变什么。我还浏览了 cwt wavefun 的数学工作页面,但没有任何解决方案。

我以前从未使用过CWT,因此我认为我可能会误解某些内容并将指令应用错误。任何人都可以帮我解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

您没有正确使用该功能。第二个参数是比例矢量,其中每个数字是您想要的所需比例。 scale10并不意味着什么。你想要 10th 比例吗?

这样做:

dudx=cwt(vector,10,'gaus1'); 

请阅读此处的文档:http://www.mathworks.com/help/wavelet/ref/cwt.html