реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
deelan
сообщение Oct 29 2007, 10:50
Сообщение #1


Участник
*

Группа: Новичок
Сообщений: 36
Регистрация: 18-07-07
Пользователь №: 29 198



Есть датчик, с которого снимается сигнал. Этот сигнал фильтруется (гифка прилагается), а затем осущетвляется поиск минимума для определения периодики процесса. Сигнал далек от идеального, поэтому нужен наиболее эффективный алгоритм поиска миимума. Суть вопроса сводится к следующему - нет ли в свободном распространении продвинутых алгоритмов поиска экстремумов? Моя реализация не всегда работает корректно.
Go to the top of the page
 
+Quote Post
deelan
сообщение Oct 29 2007, 10:50
Сообщение #2


Участник
*

Группа: Новичок
Сообщений: 36
Регистрация: 18-07-07
Пользователь №: 29 198



Есть датчик, с которого снимается сигнал. Этот сигнал фильтруется (гифка прилагается), а затем осущетвляется поиск минимума для определения периодики процесса. Сигнал далек от идеального, поэтому нужен наиболее эффективный алгоритм поиска миимума. Суть вопроса сводится к следующему - нет ли в свободном распространении продвинутых алгоритмов поиска экстремумов? Моя реализация не всегда работает корректно.

Сообщение отредактировал deelan - Oct 29 2007, 10:52
Эскизы прикрепленных изображений
 Изображение уменьшено
Прикрепленное изображение
(9.1 килобайт)
 
Go to the top of the page
 
+Quote Post
andrew_b
сообщение Oct 29 2007, 11:13
Сообщение #3


Профессионал
*****

Группа: Свой
Сообщений: 1 975
Регистрация: 30-12-04
Из: Воронеж
Пользователь №: 1 757



Алгоритм Стронгина не подойдёт?
Go to the top of the page
 
+Quote Post
NickNich
сообщение Oct 29 2007, 11:24
Сообщение #4


Местный
***

Группа: Свой
Сообщений: 375
Регистрация: 8-11-05
Пользователь №: 10 593



Цитата(deelan @ Oct 29 2007, 13:50) *
(гифка прилагается)

А где обещанная гифка? Кроме гифки укажите, минимум какой функции Вы ищите и каким алгоритмом пользуетесь.
Go to the top of the page
 
+Quote Post
deelan
сообщение Oct 29 2007, 12:47
Сообщение #5


Участник
*

Группа: Новичок
Сообщений: 36
Регистрация: 18-07-07
Пользователь №: 29 198



Цитата(NickNich @ Oct 29 2007, 14:24) *
А где обещанная гифка?


Сори, осталась в другом посте. Немного с нажатием кнопок переусердствовал.

Я не знаю как называется мой алгоритм. Что-то типаа pattern recognition. Ищу локальный минимум, а потом проверяю по его соседям (глубина, ширина). Самопал обыкновенный, однако дает достаточно хорошие результаты, но хочется большей точности.


 Изображение уменьшено
Прикрепленное изображение
(9.1 килобайт)
Go to the top of the page
 
+Quote Post
fontp
сообщение Oct 29 2007, 12:56
Сообщение #6


Эксперт
*****

Группа: Свой
Сообщений: 1 467
Регистрация: 25-06-04
Пользователь №: 183



Для поиска экстремуму в зашумлённых данных есть ещё такая "стохастическая аппроксимация"

http://bse.sci-lib.com/article106594.html

Смесь Ньютона-Рафсона с тем фактом, что ряд
сумма a(n) расходится,
а сумма а(n)^2 сходится
Нужно много измерений

Может поможет.

ПС. Кажется метод Стронгина из той же оперы (?)
Go to the top of the page
 
+Quote Post
NickNich
сообщение Oct 29 2007, 13:39
Сообщение #7


Местный
***

Группа: Свой
Сообщений: 375
Регистрация: 8-11-05
Пользователь №: 10 593



Цитата(deelan @ Oct 29 2007, 15:47) *
Я не знаю как называется мой алгоритм. Что-то типаа pattern recognition. Ищу локальный минимум, а потом проверяю по его соседям (глубина, ширина). Самопал обыкновенный, однако дает достаточно хорошие результаты, но хочется большей точности.

 Изображение уменьшено
Прикрепленное изображение
(9.1 килобайт)


pattern recognition - это "распозначание образов". Вы ищите локальные минимумы в сигнале, потом по расстоянию между найденными минимумами вычисляете оценку его периода? Или строите некоторую периодическую функцию, в которой период - настраиваемый параметр, а потом по результатам сравнения ее с записанным сигналом вычисляете требуемое значение периода по минимуму ошибки?

Если первый случай - Ваш, то вы придумали вполне работоспособный алгоритм. Его можно только модифицировать, аналогично "методу парабол", принятому при решении оптимизационных задач. Для этого, сначала Вы ищите точку локального минимума в дисретной записи данных. Потом находите две или больше точек, стоящих по разные стороны от локального минимума по временной шкале. Значения в этих точках должны быть гарантированно больше ликального минимума, а в промежутках между локальным минимумом и этими точками не должно быть других локальных минимумов. Потом по набору найденных точек строите аппроксимирующую параболу, и находите ее минимум. Это и будет уточненная оценка локального минимума.
Go to the top of the page
 
+Quote Post
deelan
сообщение Oct 29 2007, 13:41
Сообщение #8


Участник
*

Группа: Новичок
Сообщений: 36
Регистрация: 18-07-07
Пользователь №: 29 198



У меня первый сучай. Метод парабол - подойдет. Спасибо wink.gif
Go to the top of the page
 
+Quote Post
rezident
сообщение Oct 29 2007, 15:29
Сообщение #9


Гуру
******

Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882



Экстремум в реальном времени нужно искать или сигнал записывается куда-то? Нужен просто математический алгоритм или алгоритм в приложении к какому-то микроконтроллеру? Если первое, то чем нахождение первой и второй производной не устраивает?
P.S. аттач не отображается.
Go to the top of the page
 
+Quote Post
Guest_TSerg_*
сообщение Oct 31 2007, 13:28
Сообщение #10





Guests






В общем случае ответа нет.
После предъявления статистических свойств полезного сигнала и помехи могут последовать рекомендации.

В самом примитивном случае: два фильтра, один для выделения основной частоты, второй для текущего среднего, т.е. НЧ фильтр с большой постоянной времени. Выходы сравниваются кросс-детектором.
Go to the top of the page
 
+Quote Post
Oldring
сообщение Nov 2 2007, 11:56
Сообщение #11


Гуру
******

Группа: Свой
Сообщений: 3 041
Регистрация: 10-01-05
Из: Москва
Пользователь №: 1 874



Цитата(deelan @ Oct 29 2007, 16:41) *
У меня первый сучай. Метод парабол - подойдет. Спасибо wink.gif


Только для определения периода процесса поиск экстремумов сигнала не есть наилучший метод. Другие методы, скорее всего, дадут заметный выигрыш в точности. Например, поиск первого максимума автокоррреляционной функции в заданном диапазоне смещений.


--------------------
Пишите в личку.
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 16th July 2025 - 07:25
Рейтинг@Mail.ru


Страница сгенерированна за 0.01467 секунд с 7
ELECTRONIX ©2004-2016