Como detectar picos no MATLAB
Passo 1
Define uma fonte de informações importando dados para o MATLAB. Por exemplo, crie uma onda senoidal com ruído aleatório:
my_signal = sin (0: 0, 1: 10) + rand (1, 101);
Passo 2
Encontre picos no seu sinal usando o método de interpolação quadrática de "findpeaks ():"
[peak_value, peak_location] = findpeaks (meu_sinal);
Passo 3
Procure por picos de altura mínima usando o parâmetro "minpeakheight". A altura é um escalar de valor real que se refere ao valor mínimo de dados dos picos permitidos:
[peak_value, peak_location] = findpeaks (meu_sinal, 'minpeakheight', 2.5);
Passo 4
Procure por picos separados por uma distância mínima usando o parâmetro "minpeakdistance". O valor é o número mínimo de índices entre picos no vetor "my_signal" e deve ser um inteiro:
[peak_value, peak_location] = findpeaks (meu_sinal, 'minipeakdistance', 5);
Passo 5
Pesquisar apenas picos acima de um certo limite usando o parâmetro "Threshold". Esta é uma escala de valor real que se refere à diferença mínima permitida entre o pico e os pontos de informação adjacentes:
[peak_value, peak_location] = findpeaks (meu_sinal, 'limite', 0, 5);
Passo 6
Encontre apenas alguns picos usando o parâmetro "npeaks". O valor deve ser um inteiro:
[peak_value, peak_location] = findpeaks (meu_sinal, 'npicos', 5);
Passo 7
Corrija a lista retornada dos picos usando o parâmetro "sortsr". Os valores permitidos são "subir" (subir), "descer" (descer) e "nenhum" (nenhum):
[peak_value, peak_location] = findpeaks (meu_sinal, 'ordenar', 'ascender');