|
Определение передаваемых частот |
|
|
|
May 8 2015, 05:15
|
Участник

Группа: Участник
Сообщений: 31
Регистрация: 8-05-15
Из: Санкт-Петербург
Пользователь №: 86 575

|
Всем доброго времени суток! Задача: есть DTMF метка, необходимо определить частоты которые передавались, с точностью до 3го знака после запятой. (DTMF - передается сумма двух гармоник, НЧ и ВЧ) Что проделано: выделяю из сигнала DTMF, fd=44100 Гц, для того, чтобы N была кратна двум, и равнялась 2048, немного обрезаю сигнал до 0.046 секунд (было 0.05 сек), таким образом T=1/fd=2.268*10^5. Беру БПФ, строю график зависимости уровня(?)(20 log(sqwr(ReБПФ^2+ImБПФ^2)/fd-N), дБ от частоты, Гц (прикрепляю скрин, freqn=n*fd/N, n=0,...,N-1).
Пики приходятся на 947,46Гц и 1205,9Гц, хотя должны быть 941Гц и 1209Гц. такая разница по видимому из-за огромного ШАГА по частоте, в 21,55 Гц, то есть передаваемые частоты не кратны нашему "шагу". Что делать дальше - не понимаю. Пробовала инетрполяцию Лагранжа - чушь полная, не получается. Есть предложение использовать коэффициенты корреляции, относительно синусоидального и косинусоидального сигналов, но результатов пока не дал, да и не до конца понятно, что с этими коэф делать. вопрос: Как математически можно определить частоты?
--------------------
Век живи, век учись...
|
|
|
|
|
 |
Ответов
|
May 8 2015, 07:13
|
Знающий
   
Группа: Участник
Сообщений: 527
Регистрация: 4-06-14
Из: Санкт-Петербург
Пользователь №: 81 866

|
Какие стоят ограничения на вычислительную сложность? Спектральный анализ не ограничивается методами, основанными на преобразовании Фурье. Существуют алгоритмы высокого разрешения, которые позволяют выделять сигналы с высокой точностью. Главные преимущества - возможность разделять сигналы с малым отличием по частоте или с большой разницей в мощности. Но можно использовать и для высокоточного определения частот в случаях обычного анализа, как, кажется, у вас. Если интересно, могу посоветовать начать изучение с непараметрических методов: Capon, MUSIC, root MUSIC, т.к. они проще чем параметрические (AR модели и прочие). Вот пример из матлаба, использующего встроенную функцию (матлаб вы все таки как нибудь поставте, никуда без него) Код clear all; Ns = 2048; fs = 1e5; Ts = 1/fs; t=0:Ts:(Ns-1)*Ts; f0 = 12344; f1 = 37115; SNR = 60; a0 = 1; a1 = 1; s = a0*exp(1i*2*pi*f0*t) + a1*exp(1i*2*pi*f1*t); s = awgn(s, SNR, 'measured'); [w, p] = rootmusic(s, 2, fs); disp('SNR, dB:'); disp(SNR); disp('Estimated frequencies, kHz:') disp(w/1000); Для SNR=60 дБ: Код Estimated frequencies, kHz: 37.1150 12.3440 Для SNR=20дБ: Код Estimated frequencies, kHz: 37.1138 12.3417 Размер исходной выборки взял как у вас - 2048, но можно и меньше, ошибка будет соответственно расти. Но величина ошибки значительно меньше чем для периодограмм (Фурье)
Сообщение отредактировал serjj - May 8 2015, 07:14
|
|
|
|
|
May 8 2015, 07:41
|
Гуру
     
Группа: Свой
Сообщений: 2 360
Регистрация: 6-03-06
Из: Кишинев
Пользователь №: 15 025

|
Kseniia, Попробуйте Гаусса (я до alpha = 4.05 доходил, но коэффициент экспериментально под свои данные подбирал) и параболическую интерполяцию по трем максимальным бинам. Про бины- это те самые вычисленные БПФ магнитуды, по которым Вы приложенную картинку нарисовали. Вот, в интернете нашел коротко и довольно внятно: Цитата Единицу FFT-сетки называют "бин" (bin). Один бин FFT содержит информацию о целом диапазоне частот, ширина которого обратно пропорциональна размеру окна FFT. Таким образом, каждый бин "ответственен" за сразу множество частот.
|
|
|
|
Сообщений в этой теме
Kseniia Определение передаваемых частот May 8 2015, 05:15 Ruslan1 Прикрепите файл с вычисленными бинами БПФ и покажи... May 8 2015, 06:22 Kseniia Цитата(Ruslan1 @ May 8 2015, 09:22) Прикр... May 8 2015, 06:53 Kseniia Цитата(serjj @ May 8 2015, 10:13) Какие с... May 8 2015, 07:41 serjj Цитатаданные непарметрические методы - функции в м... May 8 2015, 07:43 Kseniia Цитата(serjj @ May 8 2015, 10:43) В матла... May 8 2015, 07:56 serjj Марпл-мл. С.Л. "Цифровой спектральный анализ ... May 8 2015, 08:00 Kseniia Цитата(serjj @ May 8 2015, 11:00) Марпл-м... May 8 2015, 08:06 blackfin Цитата(Kseniia @ May 8 2015, 08:15) Задач... May 8 2015, 08:07 Kseniia Цитата(blackfin @ May 8 2015, 11:07) А Ва... May 8 2015, 09:26  petrov Цитата(Kseniia @ May 8 2015, 12:26) именн... May 13 2015, 12:08   Kseniia Цитата(petrov @ May 13 2015, 15:08) А зач... May 13 2015, 12:32    petrov Цитата(Kseniia @ May 13 2015, 15:32) дело... May 13 2015, 12:41  blackfin Цитата(Kseniia @ May 8 2015, 12:26) именн... May 13 2015, 13:27   petrov Цитата(blackfin @ May 13 2015, 16:27) Ну ... May 13 2015, 14:22 serjj Цитатав DTMF передается 2 частоты: НЧ и ВЧ, то мал... May 8 2015, 10:33 Kseniia Цитата(serjj @ May 8 2015, 13:33) Зачем в... May 8 2015, 11:15 serjj Размер выборки кстати ограничен? Или можно копить ... May 8 2015, 11:25 _pv вместо быстрого преобразования, посчитайте обычные... May 8 2015, 11:55 serjj Цитатавместо быстрого преобразования, посчитайте о... May 8 2015, 12:08 Alex11 Кроме всего прочего, при Гауссовском окне чтобы ис... May 8 2015, 15:33 Hose В самом начале рассуждений вы назначили что будет ... May 9 2015, 15:02 Alex11 Это отличный совет, но там две частоты не кратные ... May 11 2015, 23:11 Kseniia Цитата(serjj @ May 8 2015, 14:25) Размер ... May 13 2015, 05:22 _pv Цитата(Kseniia @ May 13 2015, 12:22) разм... May 13 2015, 09:50  Kseniia Цитата(_pv @ May 13 2015, 12:50) про авто... May 13 2015, 10:48 _pv я там руками столбец со временем добавил. Чтобы с ... May 13 2015, 12:14 Kseniia Цитата(_pv @ May 13 2015, 15:14) я там ру... May 13 2015, 12:43 GeGeL Мне показалось, что суть задачи TC - в скрытой иде... May 13 2015, 15:35 Hose Бпф=быстрое преобразование Фурье
Есть еще просто П... May 14 2015, 02:56 Kseniia Цитата(blackfin @ May 13 2015, 16:27) Кас... May 14 2015, 06:20 GeGeL Цитатаблизко к телу...
Тут есть два варианта разви... May 14 2015, 12:50 Alex11 Цитатана сечт коэф, у нас же амплитуда меняется, к... May 14 2015, 14:17 Fourier Вам тут уже советовали алгоритм MUSIC. Он дает оче... May 15 2015, 20:19 serjj ЦитатаВам тут уже советовали алгоритм MUSIC. Он да... May 15 2015, 20:43 blackfin Цитата(serjj @ May 15 2015, 23:43) .. хор... May 16 2015, 04:09 Fourier ЦитатаА книжкой не поделитесь?)
Книжка May 15 2015, 22:10 GeGeL ЦитатаТочную оценку обеих частот f1 и f2 в этом сл... May 17 2015, 19:12 Kseniia всем спасибо за советы, на счет книги, скачала, бу... May 18 2015, 06:05 blackfin Цитата(Kseniia @ May 18 2015, 10:05) ..ес... May 18 2015, 06:55 serjj А какие частоты у вас в WavDataS? Там точно 941 и ... May 18 2015, 06:24 Kseniia Цитата(serjj @ May 18 2015, 09:24) А каки... May 18 2015, 07:28 blackfin Цитата(Kseniia @ May 18 2015, 11:28) А гд... May 18 2015, 07:48 serjj Цитатая вот какой выход нашла, и без всякого БПФ..... May 18 2015, 08:08 Kseniia Цитата(serjj @ May 18 2015, 11:08) Привед... May 18 2015, 12:10  blackfin Цитата(Kseniia @ May 18 2015, 16:10) Прав... May 19 2015, 05:00 serjj ЦитатаВ DTMF может быть 16 вариантов позиций (от 6... May 18 2015, 12:50 Kseniia Цитата(serjj @ May 18 2015, 15:50) Вы раз... May 21 2015, 06:09  blackfin Цитата(Kseniia @ May 21 2015, 09:09) не м... May 22 2015, 04:28   Kseniia Цитата(blackfin @ May 22 2015, 07:28) Что... May 22 2015, 05:13 serjj Цитатане могу понять, что есть fmax и как получена... May 21 2015, 06:30 Kseniia Цитата(serjj @ May 21 2015, 09:30) fmax -... May 21 2015, 09:14
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0
|
|
|