Hello Muhammad,
To calculate the standard deviation of level 6 decomposition of a signal, using multiple wavelets, try these steps:
- Start by declaring the list of wavelets to be used.
signal = randn(1, 1000); %Replace this with your input signal
waveletList = {'haar', 'db1', 'db2', 'db3', 'db4', 'db5', 'db6', 'db7', 'db8', 'db9', 'db10', 'sym2', 'sym3'};
- For each wavelet, use the 'wavedec' function to decompose the signal, the 'detcoef' function to find the coefficients, and the 'std' function to determine the standard deviation.
for i = 1:length(waveletList)
waveletName = waveletList{i};
[C, L] = wavedec(signal, 6, waveletName);
D6 = detcoef(C, L, 6);
sd = std(D6);
fprintf('%s %.5f\n', waveletName, sd)
end
For a better understanding of the solution, refer to these documentations: