У мене є сигнал, який я беру на вибірку в 500 кГц. Я намагаюся виявити зростання, падіння та пік вхідних даних. Основа піку могла бути на 250 у.е. або 2,5 мс, амплітуда може бути на 6 дБ або 15 дБ над підлогою шуму. На жаль, я не маю гарного snr. Рівень постійного струму сигналу не є постійним, але рухається набагато повільніше, ніж компонент змінного струму.
У момент прийняття рішення мені потрібно знати схил підйому і падіння. Це складна система в режимі реального часу, і мені дійсно потрібно прийняти рішення в 100usec після того, як нахил вниз знизиться до рівня постійного струму.
Я шукаю пропозиції, як я можу ефективно реалізувати гідний алгоритм.
В даний час я роблю середнє значення (останні 25 точок даних додано разом) і намагаюся виявити тенденцію. Як тільки я виявляю тенденцію вгору, я починаю шукати тенденцію вниз і, як тільки це роблю, я збираю, можливо, ще 50 зразків і починаю обчислювати.
Шум тепер легко вкручує цей алгоритм, звідси і питання.
Оновити
На користь інших, я закінчив впроваджувати Ковзну Середню, а потім інтегратор. Середнє значення за останні 64 дані досить згладжене, але втрачено зростало до певної міри, інтегруючи останні 8 значень, отриманих назад підйом, і я просто шукаю підвищення та падіння, пізніше я зробив лінійну регресію для схилу. Працює нормально, не чудово, але добре.