|
Определение периода сигнала, нужен простой алгоритм |
|
|
|
 |
Ответов
|
Aug 23 2010, 15:51
|

Профессионал
    
Группа: Участник
Сообщений: 1 014
Регистрация: 8-01-07
Из: San Jose, CA
Пользователь №: 24 202

|
QUOTE (Alex11 @ Aug 23 2010, 19:28)  Вы бы поиграли с модельками, тем более, что у Вас есть разные варианты записанного сигнала. Возможно, что Вам будет достаточно очень небольшого по буферу Фурье, чтобы определить основную частоту. Нужно только разойтись с гармониками, а дальше уточнить частоту по огибающей. Я и играюсь тут, просто коллективный разум хотел еще привлечь, иожет велосипед изобретаю. Так же попробовал метод описанный в одном из блогов: QUOTE The solution I used is a pretty simple one. We set two thresholds (a positive and a negative one), and start counting when the signal value becomes higher than the positive threshold. We keep counting and wait for the signal to go below the negative threshold, then wait for it to go above the positive one again. This sometimes helps us count only the transitions we’re interested in. Он дает правильное определение чаще чем обычный подсчет переходов через ноль, но все-равно ошибается, когда амплитуда "помехи" достаточно велика. Вот 4 последовательных периода наложенные друг на друга. Видно, что они отличаются незначительно, но внутри самого периода у них есть особенности и характерные неравномерности. Но сам период я вычислил зная частоту струны и то, что струна был настроена. В идеале нужен алгоритм, который найдет подобную зависимость и определит период.
Эскизы прикрепленных изображений
|
|
|
|
|
Aug 23 2010, 16:06
|
Гуру
     
Группа: Почетный участник
Сообщений: 6 851
Регистрация: 25-08-08
Из: Запорожье
Пользователь №: 39 802

|
Цитата(Taradov Alexander @ Aug 23 2010, 18:51)  Он дает правильное определение чаще чем обычный подсчет переходов через ноль, но все-равно ошибается, когда амплитуда "помехи" достаточно велика.
Вот 4 последовательных периода наложенные друг на друга. Видно, что они отличаются незначительно, но внутри самого периода у них есть особенности и характерные неравномерности. Но сам период я вычислил зная частоту струны и то, что струна был настроена.
В идеале нужен алгоритм, который найдет подобную зависимость и определит период. Вы привели картинки неполностью, неаккуратно наложенных колебаний. Форма их может несколько отличаться, но частота (период) одинаковы. Возможно, я чего-то в Вашей формулировке не понимаю, но ни о каких "помехах" речь идти не должна. Период легко должен определяться через подсчет времени переходов через нуль. Вы как и чем пытаетесь измерять? Неужели по-эмбеддерски, с помощью АЦП?
|
|
|
|
|
Aug 23 2010, 16:18
|

Профессионал
    
Группа: Участник
Сообщений: 1 014
Регистрация: 8-01-07
Из: San Jose, CA
Пользователь №: 24 202

|
QUOTE (Microwatt @ Aug 23 2010, 20:06)  Возможно, я чего-то в Вашей формулировке не понимаю, но ни о каких "помехах" речь идти не должна. На первой картинке я черным изобразил период синуса (как смог, извините) 82 Герц. Я вполне уверен, что струна колеблется именно с этой частотой. Искажение ("провал") по центру - это особенность огибающей этой струны, простое определение по пересечениям даст удвоенную частоту. Вторая картинка - то-же эффект, но не так сильно выраженный. Период сигнала заключен между двумя большими "горбами". Так что просто посчетом переходов через ноль нельзя отделаться. -------------------- И еще один рисунок где проблема видна очень хорошо. Период OK по переходам через 0 определится правильно, период BAD - нет.
Сообщение отредактировал Taradov Alexander - Aug 23 2010, 16:31
Эскизы прикрепленных изображений
Прикрепленные изображения
|
|
|
|
Сообщений в этой теме
Taradov Alexander Определение периода сигнала Aug 23 2010, 13:01 scifi Что-то мне подсказывает, что здесь без "сложн... Aug 23 2010, 14:00 Taradov Alexander QUOTE (scifi @ Aug 23 2010, 18:00) И ещё ... Aug 23 2010, 14:10 Microwatt Цитата(Taradov Alexander @ Aug 23 2010, 16... Aug 23 2010, 14:16 Taradov Alexander QUOTE (Microwatt @ Aug 23 2010, 18:16) Ст... Aug 23 2010, 14:47  Oldring Цитата(Taradov Alexander @ Aug 23 2010, 18... Aug 23 2010, 15:17   Taradov Alexander QUOTE (Oldring @ Aug 23 2010, 19:17) У ва... Aug 23 2010, 15:27    Andrey_1 Цитата(Taradov Alexander @ Aug 23 2010, 19... Apr 2 2011, 19:10 Oldring Цитата(Taradov Alexander @ Aug 23 2010, 17... Aug 23 2010, 14:31 @Ark Судя по Вашему описанию и картинкам, главное отлич... Aug 23 2010, 17:42 rezident Может я чего-то не понял, но почему из всего спект... Aug 23 2010, 17:51 Taradov Alexander QUOTE (rezident @ Aug 23 2010, 21:51) Мож... Aug 23 2010, 18:29  demiurg_spb Я для настройки гитары пользуюсь вот этой софтинко... Aug 23 2010, 19:14   Taradov Alexander QUOTE (demiurg_spb @ Aug 23 2010, 23:14) ... Aug 23 2010, 19:21    demiurg_spb Цитата(Taradov Alexander @ Aug 23 2010, 23... Aug 23 2010, 19:36    Самурай Alexander, попробуйте посмотреть в сторону алгорит... Aug 23 2010, 19:57 Microwatt Ага, теперь из картинки "ОК" и "Пло... Aug 23 2010, 19:08 GetSmart Автокореляцию не пробовали? Вроде идеальная для эт... Aug 23 2010, 23:04 Wise ЦитатаВ идеале нужен алгоритм, который найдет подо... Aug 23 2010, 23:22 fontp Здесь много всего муыкального, в том числе и опред... Aug 24 2010, 09:59 Taradov Alexander И так, приемлемое решение нашлось.
Алгоритм:
1. Вх... Aug 24 2010, 18:39 jer Цитата(Taradov Alexander @ Aug 24 2010, 22... May 11 2011, 12:34 Dmitry Valento Александр, но ведь ваш алгоритм не дает высокой то... Mar 31 2011, 08:05 Alexey Lukin Улучшить точность можно с помощью параболической и... Apr 7 2011, 09:15 Make_Pic Цитата(Alexey Lukin @ Apr 7 2011, 12:15) ... Apr 18 2011, 09:59
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|