Здравствуйте, DDzuba, Вы писали:
DD>Здравствуйте!
DD>Есть массив значений, поступающих с какого-то источника. По сути это должна быть периодическая
DD>функция, последовательность минимумов и максимумов с немного изменяющимися во времени частотой,
DD>амплитудой.
DD>Необходимо в реальном времени(допустимо с небольшим известным запаздыванием) определять моменты
DD>возникновения min и max, расстояния м/д ними, амплитуду и т.п.
DD>Проблема в том, что имееются сильный шум и помехи, которые не позволяют всё это просто определять.
DD>Т.е. постоянно возникают локальные минимумы и максимумы. См. рис. 1.
DD>Простыми фильтрами я это несколько сглаживаю, но этого недостаточно. Дальнейшее сглаживание приводит
DD>к недопустимой потере информации. Всякие сложные фильтры, разложения и т.п. не подходят, поскольку
DD>всё должно быть в реальном масштабе времени.
DD>Что в этом случае можно сделать? Ведь совершенно очевидно( из рисунка ), что информация о наличии
DD>мин. и мах. имеется и извлечь её возможно.
DD>Спасибо!
DD>Рис. 1:
DD>
Здравствуйте. Могу попробовать предлжить следующий алгоритм:
1. Построить нейронную сеть для обучения.
2. Подавать на вход зашумленные значения и идеальный вариант.
3. После обучения подавать на реальные значения, получая на выходе отфильтрованый вариант. дальше изучать саму кривую.