马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?我要加入
x
我是一emd新手,大家帮帮忙,如何用支持向量机程序来抑制信号的分解的端点效应,程序总出错,实在没有头绪,不知道怎么改,程序如下:
clc;clear;close all;
fs=1024;n=1024;
%t=linspace(0,1,n);
t=0:1/fs:(n-1)/fs;
x=sin(60*pi*t)+sin(50*pi*t);
imf=emd(x);
L_IMF1=length(imf(:,1));
figure;
for i=1:L_IMF1
subplot(L_IMF1,1,i);
plot(t,imf(i,:));
set(gca,'xlim',[0 1]);
set(gca,'fontname','Times New Roman','Fontsize',9');
end
a=imf(1,:);
b=imf(2,:);
num=100;%设置要延拓的点数
l=100; %设置训练样本数
fprintf('向右延拓中……\n');
for i=1:l
X(i,1:N-l)=x(i:N-l+i-1);
Y(i,1)=x(N-l+i);
end
[nsv beta bias] = svr(X,Y,'linear',Inf,'einsensitive',0);
for j=0:num-1
m=0;
XX=x(l+1+j:N+j);
for i=1:l
m=m+beta(i)*(X(i,1:N-l)*XX');
end
s(N+j+1)=m+bias;
end
extend_right=x(N+1:N+num);
extend=[x,extend_right];
|