仅允许在对象自己的方法中访问该对象的字段。 出错 TimeDomain_features (第 56 行) for i=1:length(wp.dec)
时间: 2024-03-21 17:41:31 浏览: 78
这个错误可能是因为在访问对象的字段时出现了问题。请确保在访问对象的字段时使用了正确的语法。另外,请确保在访问对象的字段时,对象已经被正确地初始化并且已经具有所需的字段。
以下是一个可能的解决方案,你可以尝试进行修改:
```matlab
classdef TimeDomain_features
properties
signal
wp
end
methods
function obj = TimeDomain_features(signal)
obj.signal = signal;
wname = 'db4';
level = 3;
[wp, ~] = wpdec(signal,level,wname);
obj.wp = wp;
end
function compute_features(obj)
% 绘制小波包系数图像
figure;
for i=1:length(obj.wp.dec)
subplot(length(obj.wp.dec),1,i);
plot(obj.wp.dec{i});
ylabel(sprintf('Node %d',i));
end
xlabel('Sample Index');
end
end
end
```
在这个修改后的代码中,我们将wp属性存储在对象中,并在compute_features方法中使用obj.wp访问该属性。这样做应该可以解决你遇到的问题。
阅读全文