How do you find average power?
153 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Nathan Jaqua
el 20 de Nov. de 2019
Comentada: Rik
el 24 de Mayo de 2020
Hi y'all, I'm having an issue with this logic. I need to find the average power of but I don't see what I am doing wrong with this. Nothing shows up when I read my start.au and thusly, I'm not sure about my voiced and un_voiced segments.
clc;
clear all;
[x, Fs] = audioread('start.au');
% plot the file
plot(x, Fs);grid on;
title('raw speech data');
xlabel('samples');ylabel('amplitude');
% identify voiced segment from the speech vector. Load it in newly created
% voiced segment array
L = 300; % number of samples in sub-sample array
x_voiced = x(L:0+ L-1);
% identify unvoiced segment from the speech vector. Load it in newly created
% unvoiced segment array
x_unvoiced = x(L:0 + L-1);
% calculate average power of a voiced and unvoiced segments.
% Use avg power formula as shown in the file
P_voiced = sum(x_voiced)/L;
P_unvoiced = sum(x_unvoiced)/L;
2 comentarios
Respuesta aceptada
Daniel M
el 21 de Nov. de 2019
Editada: Daniel M
el 21 de Nov. de 2019
Calculating the average power of your discrete signal according to the equation in your attached figure is done as:
P = sum(x.^2)/L;
Or
P = mean(x.^2);
Or
P = rms(x)^2;
2 comentarios
Rik
el 24 de Mayo de 2020
That isn't really a Matlab question, but you can figure it out with unit analysis. Squaring and division affect the unit, but sum doesn't.
Más respuestas (0)
Ver también
Productos
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!