|
|
ru.algorithms- RU.ALGORITHMS ---------------------------------------------------------------- From : Zahar Kiselev 2:5030/382.1 02 Feb 2003 10:46:00 To : Dmitriy Yaroshevich Subject : нулевые значения функции -------------------------------------------------------------------------------- Feb 02 03:48 03, Dmitriy Yaroshevich wrote to Zahar Kiselev: ZK>> Есть оцифрованный сигнал. ZK>> Форма - что-то типа сильно ограниченной и слегка зашумленной ZK>> синусоиды. DY> уровень шума сравним с уровнем сигнала? Значительно меньше. Просто видно, что он есть, а не чистый сигнал. ZK>> Hа один период сигнала есть штук пять-семь DY> ну если 5-7 для любой частоты(т.е. и макс. тоже)то точек ты взял DY> достаточно. 5-7 - это как раз для максимальной, для других - больше. DY> Ты проверяешь через одну точку(потому что смешение может сработать DY> как в одну, так и в другую сторону) на то - что она 0 по её DY> соседям.Если у соседей знаки разные, значит текущяя обрабатываемая DY> точка - близка к нулю.Можеш её и взять, С этим понятно. DY> а можеш попытаться немного точнее: DY> Т*|Y(X[i])| DY> Х0=X[i]+------------------------- *sign(Y(X[i])*Y(X[i-1])) DY> (|Y(X[i+1])|+|Y(X[i])|) DY> если sign(Y(X(i-1)))!=sign(Y(X(i+1))) DY> Может где малехо провтыкал - но смысл где-то там. DY> Алгоритм сочинял по ходу дела:), но ты попробуй,недолго. DY> Расписывать мысль лень. Придется мне ее додумывать. DY> Если я правельно понимаю тебе это надо для частотного DY> демодулирования(т.е. по расположении нулей можно востановить исходный DY> сигнал) Hу можно и так назвать. Мне нужно измерять период сигнала с датчика. Причем усреднять больше чем по двум-трем периодам нежелательно, поэтому пропускать сигнал через ФHЧ не хочу, а хочу восстанавливать нули и вычислять интервалы между ними. DY> Есть у нас препод(старый но продвинутый нормально). DY> Много интересного говорит, но иногда не все понятно. У меня такого препода под рукой нет. Да и сам я уже лет десять как не студент:) DY> Говорит что возможно решение проблемы лежит в разложении функции DY> рядом DY> sin(x)*sin(2x)*sin(3x)*...*sin(nx). Похоже он имел в виду преобразование Фурье. Вот только десятка точек мало чтобы сколько-ниубдь точно вычислить частоты этих синусоид. Вобщем я думаю, что предложенного тобой метода поиска "близких к нулю" точек в комбинации с предложенной вчера формулой интерполяции функции прямой линией и вычисления "нуля" мне должно быть достаточно. Твой метод позволит не пихать в формулу все точки подряд и не считать лишнее, а сама формула - вычислять моменты перехода через ноль и на их основании - длительность периода. Завтра попробую и посмотрю - какой будет разброс у значений длительности периода при постоянных параметрах входного сигнала. Zahar(@spbdept.rbc.ru) --- Msged/LNX 6.1.1 * Origin: Остров Большой Березовый: http://birch-island.spb.ru (2:5030/382.1) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.algorithms/32883e3ce837.html, оценка из 5, голосов 10
|