ssa

Форк
0
/
ProcentileFilter.m 
40 строк · 1.1 Кб
1
function [out, lower_prct, upper_prct] = ProcentileFilter(signal, threshold)
2

3

4
    Nmed = 5;
5
    signal = signal-medfilt1(signal, Nmed);
6
    
7
    disp("Àïåðòóðà ôèëüòðà äëÿ insFrc_AcfNrm äëÿ ôèëüòðà ïðîöåíòèëåé: " + Nmed);  
8
    prct = prctile(signal, threshold);
9

10
    lower_prct=prct(1);
11
    upper_prct=prct(2);
12
    
13
%     lower_prct = prctile(signal-medfilt1(signal, Nmed), 30);
14
%     upper_prct = prctile(signal-medfilt1(signal, Nmed), 30);
15

16
    disp("lower_prct " + lower_prct);
17
    disp("upper_prct " + upper_prct);
18
    
19
%     line('XData', [0 200], 'YData', [lower_prct lower_prct], 'Color','red','LineStyle','--');
20
%     line('XData', [0 200], 'YData', [upper_prct upper_prct],'Color','red','LineStyle','--');
21
    
22
    
23
    signal=signal-medfilt1(signal, Nmed);
24
    out = signal;
25
    
26
    index = 1;
27
    MemoryValue = signal(1);
28
    
29
    % Öèêë ïî âñåìó ñèãíàëó
30
    for value = signal
31
       
32
        if (value < lower_prct || value > upper_prct)
33
            out(index) = MemoryValue;
34
        end
35
       
36
       MemoryValue=out(index);
37
       index=index+1;
38
    end
39
     
40
end
41

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.