can an array be passed to rceps?

Using rceps to find pulses in whale clicks. When the 8 clicks (8x4967) are averaged into one click (1x4967) and the average click passed to rceps the result is an interval between clicks of 3.01563 mS. That is is time between the 2nd click and third click. When the array of 8 clicks (8x4967) passed to rceps and the results averaged all three pulses in the whale click are visible. The time between the pulses look correct. Is it valid to send an array to rceps?
avg_click=mean(whale_clicks);%calculate average click from 8 whale clicks
[k,l]=size(whale_clicks);
fs=192000;%sampling frequency 192000 samples per second
for i =1:l;%calculate time points for samples
ts(i)=(i-1)*(1/192000);
end
% calculate real cepstrum of the average whale click squared
[C1,C1min]=rceps(avg_click.^2);%use "power" square the time series values
%calculate real cepstrum of each of the 8 whale click squared
[C2,C2min]=rceps((whale_clicks).^2);
figure
plot(ts,C1)
title('real cepstrum average click squared')
xlabel('quefrency (seconds)')
figure
Z= mean(C2,1);%calculate the average of the 8 cepstra (One from each click)
plot(ts,Z)
title('average of real cepstrum of (each whale clicks squared)')
xlabel('quefrency (seconds)')

 Risposta accettata

Walter Roberson
Walter Roberson il 26 Lug 2023

0 voti

No, rceps is documented as accepting vectors

Più risposte (0)

Categorie

Scopri di più su MATLAB in Centro assistenza e File Exchange

Prodotti

Release

R2022a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by