c语言dll bcb,BCB调用DLL中的MATLAB复杂函数不成功!

function y = wavelet(x)

plot(x);         %显示处理前的数据

hold;      %在同一坐标系统显示两幅图

[cs,ls] = wavedec(x,8,'haar')    %用小波对原始数据进行8层分解

ca8=appcoef(cs,ls,'haar',8);        %提取小波分解的低频参数

cd8=detcoef(cs,ls,8);               %提取第8层的高频参数

cd7=detcoef(cs,ls,7);               %提取第7层的高频参数

cd6 = detcoef(cs,ls,6)                %提取第6层的高频参数

cd5=detcoef(cs,ls,5);               %提取第5层的高频参数

cd4=detcoef(cs,ls,4);               %提取第4层的高频参数

cd3=detcoef(cs,ls,3);               %提取第3层的高频参数

cd2=detcoef(cs,ls,2);               %提取第2层的高频参数

cd1=detcoef(cs,ls,1);               %提取第1层的高频参数

cd8soft = wthresh(cd8,'s',0.010);    %对第8层的高频参数进行阈值变化

cd7soft = wthresh(cd7,'s',0.013);    %对第7层的高频参数进行阈值变化

cd6soft = wthresh(cd6,'s',0.011);    %对第6层的高频参数进行阈值变化

cd5soft = wthresh(cd5,'s',0.011);      %对第5层的高频参数进行阈值变化

cd4soft = wthresh(cd4,'s',0.011);      %对第4层的高频参数进行阈值变化

cd3soft = wthresh(cd3,'s',0.011);      %对第3层的高频参数进行阈值变化

cd2soft = wthresh(cd2,'s',0.011);      %对第2层的高频参数进行阈值变化

cd1soft = wthresh(cd1,'s',0.011);      %对第1层的高频参数进行阈值变化

ca8 = ca8';

cd8soft = cd8soft';

cd7soft = cd7soft';

cd6soft = cd6soft';

cd5soft = cd5soft';

cd4soft = cd4soft';

cd3soft = cd3soft';

cd2soft = cd2soft';

cd1soft = cd1soft';

cs3(1:16)=ca8;

cs3(17:32)=cd8soft;

cs3(33:64)=cd7soft;

cs3(65:128)=cd6soft;

cs3(129:256)=cd5soft;

cs3(257:512)=cd4soft;

cs3(513:1024)=cd3soft;

cs3(1025:2048)=cd2soft;

cs3(2049:4096)=cd1soft;

y = waverec(cs3,ls,'haar');

y=y';    %矩阵转置

plot(y,'g')        %显示处理后的数据

end

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值