|
Распознавание образа сигнала real-time |
|
|
|
Dec 14 2010, 21:46
|
Группа: Участник
Сообщений: 14
Регистрация: 10-10-10
Из: Королёв Моск.обл.
Пользователь №: 60 052

|
Условие. На входе имеем сигнал звуковой частоты (музыкальный инструмент). Задача. Требуется определить частоту сигнала (извлекаемую ноту) и отправить команду исполняющему устройству. Задержка между звукоизвлечением и реакцией исп. устройства должна быть минимально заметной на слух (~10мс). Попытаться всунуть алгоритм в ARM.
Предполагаю несколько вариантов решений. 1.Корреляционный анализ. Сначала "обучаем" систему, записываем образцы сэмплов каждой ноты, а потом сравниваем входной сигнал с библиотекой образцов, т.е. определяем коэфф. корреляции. Вероятно размер образца не должен быть слишком большим (фронт сигнала), иначе задержка будет заметна. Не помешает ли это устойчивости распознавания?
2.Нейронные сети. Тут темный лес, мало знаком с этой темой.
Господа опытные товарищи поделитесь соображениями, "включите свет". С какой стороны копать огород.
|
|
|
|
|
 |
Ответов
|
Dec 15 2010, 08:00
|
Группа: Участник
Сообщений: 14
Регистрация: 10-10-10
Из: Королёв Моск.обл.
Пользователь №: 60 052

|
Цитата(SPACUM @ Dec 15 2010, 12:17)  А октавы еще различать нужно? Применительно допустим к бас-гитаре и обычной гитаре, это диапазон частот от 41.203 Гц (Ми контроктавы) до 1318.5 Гц (Ми третьей октавы). Цитата(SPACUM @ Dec 15 2010, 12:17)  2. Если хотя бы 2 периода поместить в 10мс это частота будет 200Гц, а для надежности надо бы побольше, частоты очень мало отличаются. Думаю 12 периодов как минимум для надежного корреляционного разделения частот. Это частоты 1200Гц и более. 10мс на все про все. Сигнал принять, обработать, +попутные сервисы и выдать упр. сигнал. Об эти ворота уже немало рогов поломано. Если верхние частоты еще нормально детектируются, то на низких уже задержка ощутимая получается. Так что басисты до недавнего времени скромно в сторонке курили. Может и не врут немцы-то? Может и впрямь на сетях реализовали? Цитата(Oldring @ Dec 15 2010, 13:12)  Сколько нот одновременно может звучать? Пока с одной попробуем. Ну а на текущий момент играют аккордами, т.е. шесть нот (для гитары применительно). Хотя для этих целей датчики специальные ставятся, каждая струна отдельно снимается.
|
|
|
|
|
Dec 15 2010, 08:36
|

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

|
QUOTE (voicek @ Dec 15 2010, 14:00)  Применительно допустим к бас-гитаре и обычной гитаре, это диапазон частот от 41.203 Гц (Ми контроктавы) до 1318.5 Гц (Ми третьей октавы).
10мс на все про все. Сигнал принять, обработать, +попутные сервисы и выдать упр. сигнал. Об эти ворота уже немало рогов поломано. Если верхние частоты еще нормально детектируются, то на низких уже задержка ощутимая получается. Так что басисты до недавнего времени скромно в сторонке курили. Может и не врут немцы-то? Может и впрямь на сетях реализовали?
Пока с одной попробуем. Ну а на текущий момент играют аккордами, т.е. шесть нот (для гитары применительно). Хотя для этих целей датчики специальные ставятся, каждая струна отдельно снимается. .Октава - это в 2 раза. расстройка между тонами - корень 12-й степени из 2 = 1.0594630943592952645618252949461, т.е 5% Понятно что 40 гц с точностью пять процентов (+- гц) за 10 мс измерить невозможно. В общем случае есть принцип неопределённости который запрещает это, независимо от алгоритма. Это сразу рога обламать. Но на помощь приходит тот факт, что ноты звучат не на произвольных частотах (ми контрактавы не на любой частоте одинаково полезны), а только на (41.203)**(n/12). Можно пытаться соорудить банк фильтров на все ноты музыкального строя. И хотя Ми контроктавы от Фа контрактавы не отличить за 10 мс, но их высшие гармоники - возможно. Так что возможно немцы и не врут. По мощности определить в какой октаве, а по высшим гармоникам - какая нота строя. Решающая логика может быть довольно простая, нейтронной сетью называют её чтобы поважничать)) ЗЫ. Если немцы утверждают, что могут различать ноты на расстроеном инструменте, то можно смело плюнуть им в морду
|
|
|
|
Сообщений в этой теме
voicek Распознавание образа сигнала real-time Dec 14 2010, 21:46 subver Посчитать АКФ куска в 10мс и определить основной т... Dec 15 2010, 00:13 Andron_ если нужно определить лишь ноту - зачем корреляцио... Dec 15 2010, 00:29 Taradov Alexander QUOTE (Andron_ @ Dec 15 2010, 06:29) если... Dec 15 2010, 03:05  Fast Цитата(Taradov Alexander @ Dec 15 2010, 09... Dec 15 2010, 05:39   DRUID3 Цитата(Fast @ Dec 15 2010, 10:39) с помощ... Dec 15 2010, 08:22 Fast если сигнал простой, т.е. нота состоит из одного т... Dec 15 2010, 03:02 SPACUM Цитата(Fast @ Dec 15 2010, 10:02) Герцеля... Dec 15 2010, 06:17 alex_os Цитата(voicek @ Dec 15 2010, 03:46) Услов... Dec 15 2010, 04:49 DRUID3 Да, йа тоже за автокорреляцию... Но и "Фурье... Dec 15 2010, 05:34 voicek На Фурье и Герцеле вполне успешно строят тюнеры (п... Dec 15 2010, 07:07 Oldring Цитата(voicek @ Dec 15 2010, 13:07) Для с... Dec 15 2010, 07:12 alex_os Цитата(voicek @ Dec 15 2010, 13:07) Для с... Dec 15 2010, 07:50 phantom Цитата(voicek @ Dec 15 2010, 13:07) ........ Dec 16 2010, 15:27  fontp QUOTE (phantom @ Dec 16 2010, 21:27) Я по... Dec 17 2010, 05:13  DRUID3 Цитата(fontp @ Dec 15 2010, 13:36) И хотя... Dec 15 2010, 08:41   fontp QUOTE (DRUID3 @ Dec 15 2010, 14:41) ??? ... Dec 15 2010, 08:44 voicek Если произвести информационную разведку у тех же н... Dec 15 2010, 08:40 DRUID3 Цитата(voicek @ Dec 15 2010, 13:40) Если ... Dec 15 2010, 08:55  fontp QUOTE (DRUID3 @ Dec 15 2010, 14:55) Я хот... Dec 15 2010, 09:00 voicek Цитата(fontp @ Dec 15 2010, 14:44) Что та... Dec 15 2010, 09:18 DRUID3 .кстати, вопрос очкастым аспирантам и их руководит... Dec 15 2010, 09:22 Fast а в чем, собственно, беспокойство
н.с. - это подви... Dec 15 2010, 09:38 DRUID3 Цитата(Fast @ Dec 15 2010, 14:38) а в чем... Dec 15 2010, 10:00 thermit Цитатаfontp: да хоть и для немцев
Для немцев - в... Dec 17 2010, 05:36 phantom "Для начала нужно понимать что вся музыка сос... Dec 17 2010, 06:29 fontp QUOTE (phantom @ Dec 17 2010, 12:29) Это ... Dec 17 2010, 07:13  phantom Цитата(fontp @ Dec 17 2010, 14:13) ... Dec 17 2010, 11:05 voicek Цитата(phantom @ Dec 16 2010, 21:27) Я по... Dec 17 2010, 13:09 alex_os Цитата(voicek @ Dec 17 2010, 19:09) ...
Н... Dec 17 2010, 13:49 blackfin Цитата(voicek @ Dec 17 2010, 19:09) Уточн... Dec 17 2010, 14:24 Diusha Цитата(voicek @ Dec 17 2010, 19:09) на ве... Jan 1 2011, 03:43 voicek Цитата(alex_os @ Dec 17 2010, 19:49) Я пр... Dec 17 2010, 15:03 GetSmart Цитата(voicek @ Dec 17 2010, 23:03) Задер... Dec 18 2010, 05:41  phantom Цитата(GetSmart @ Dec 18 2010, 12:41) А д... Dec 18 2010, 08:48 phantom Ну тогда все проще. Я то думал что надо любой инст... Dec 18 2010, 04:38 qxov Цитата(voicek @ Dec 15 2010, 03:46) 2.Ней... Dec 21 2010, 04:55 Oldring Цитата(qxov @ Dec 21 2010, 10:55) Я вопро... Dec 21 2010, 08:01  qxov Цитата(Oldring @ Dec 21 2010, 14:01) Нейр... Dec 22 2010, 06:06   phantom Цитата(qxov @ Dec 22 2010, 13:06) Сплошны... Dec 22 2010, 14:54 phantom Как я понял из чтения всяких книжек - адаптивные ф... Dec 21 2010, 06:39 Alexey Lukin Для определения высоты тона в реальном времени с м... Jan 3 2011, 19:44 phantom Цитата(Alexey Lukin @ Jan 4 2011, 01:44) ... Jan 4 2011, 06:39
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|