0 / 0 / 0
Регистрация: 20.06.2015
Сообщений: 11
|
|
1 | |
Спектрограмма сигнала с непрерывно меняющейся частотой дискретизации19.06.2016, 23:06. Показов 2025. Ответов 13
Метки нет Все метки)
(
Добрый день!
Возникла необходимость получить спектр сигнала, не имеющего определенной частоты дискретизации. Сигнал записан в матрице, выглядит следующим образом: момент значение № времени интервала 1. 1,848 1,052 2. 2,892 1,044 3. 3,892 1 4. 4,76 0,868 5. 5,636 0,876 . . . . . . 338. 299,652 0,976 Длина записи стандартная - 5 минут (R-R интервалы на ЭКГ в секундах, и момент времени регистрации этого интервала так же в секундах). Проблема возникает в том что различные записи имеют различное количество отсчетов в зависимости от ЧСС и соответственно по всему сигналу отсчеты имеют различное "расстояние" между собой. Спектр буду сравнивать у различных записей поэтому необходимо чтобы он представлял собой вектор с четким соответствием позиция - частота (от 0.01Гц до 0.41Гц) В случае если бы сигнал был дискретный проблем бы не составило сделать это через FFT, а как быть в таком случае ломаю голову уже сутки не могу сообразить.
0
|
|
19.06.2016, 23:06 | |
Ответы с готовыми решениями:
13
GMSK, сигнал с постепенно меняющейся частотой Построение графика по значениям снятым с разной частотой дискретизации Частота дискретизации синусоидного сигнала Разработка программы для исследования процесса дискретизации непрерывного сигнала |
533 / 438 / 47
Регистрация: 17.07.2013
Сообщений: 2,236
|
|
19.06.2016, 23:14 | 2 |
0
|
![]() 939 / 839 / 121
Регистрация: 23.11.2012
Сообщений: 2,489
|
|
20.06.2016, 00:10 | 3 |
Nick07, интерполяция.
0
|
533 / 438 / 47
Регистрация: 17.07.2013
Сообщений: 2,236
|
|
20.06.2016, 01:19 | 4 |
Конечно, сначала аппроксимация и потом интерполяция
0
|
![]() 939 / 839 / 121
Регистрация: 23.11.2012
Сообщений: 2,489
|
|
20.06.2016, 02:15 | 5 |
Nick07, если надо только равномерный шаг по времени, то зачем, позвольте, аппроксимация?
0
|
533 / 438 / 47
Регистрация: 17.07.2013
Сообщений: 2,236
|
|
20.06.2016, 08:25 | 6 |
Я считаю, что самый корректный способ интерполяции - через аппроксимацию, т.е. через получение нЕкой математической формулы/зависимости. Только так можно обосновать адекватность мат модели и соответственно обосновать алгоритм расчета погрешности интерполяции. Без расчета погрешности интерполяции, сам расчет ничего не стОит, разве только можно показать свое умение пользоваться калькулятором, МАТЛАБ-ом и т.д..Некоторые специалисты это называют жонглированием чисел и я с ними согласен.
Извините, что пишу так подробно, https://ru.wikipedia.org/wiki/... 0%B8%D1%8F Аппроксима́ция (от лат. proxima – ближайшая) или приближе́ние — научный метод, состоящий в замене одних объектов другими, в каком-то смысле близкими к исходным, но более простыми. Аппроксимация позволяет исследовать числовые характеристики и качественные свойства объекта, сводя задачу к изучению более простых или более удобных объектов (например, таких, характеристики которых легко вычисляются или свойства которых уже известны).
0
|
![]() 939 / 839 / 121
Регистрация: 23.11.2012
Сообщений: 2,489
|
|
20.06.2016, 12:50 | 7 |
Nick07, безусловно доля рациональности есть в Вашем подходе. НО. Во-первых: мне представлялось, что аппроксимация и интерполяция это вообще разные математические операции для достижения разных (пусть иногда и похожих) целей. Целью интерполяции есть получение точек данных между уже существующими, причем кривая образованная полученными точками должна проходить и через исходные точки (что вроде как не обязательно при аппроксимации).
Во-вторых: Получить формулу - это конечно круто. Но, во-первых: в данной теме человек не задается такой целью, а во-вторых: я посмотрю, как Вы опишете формулой сигнал ЭКГ, да еще если он и не модельный, а есть реальной записью с аппарата. Да еще и пациент с какими то сердечными особенностями. В контексте данной задачи самой, что ни на есть аппроксимацией, был бы гармонический синтез с помощью рядов Фурье. Но это если уже говорить об аппроксимации, а не о интерполяции. В общем: с точки зрения теории - все, вроде как верно Вы говорите. Если еще и на практике (применительно к заданному вопросу) можете показать свое мастерство - снимаю шляпу ![]() Добавлено через 5 минут Iuan, пора уже нам всем как то к сути переходить ![]() Из того, что я понял: у Вас есть файл, к примеру, 10 000 строк (кол-во временных отсчетов) на 5 столбцов (количество записей) и Вы по каждой записи хотите сосчитать спектр? Тогда если расстояние между точками (по времени) не постоянное у Вас должен быть еще один вектор (а в общем случае - для каждой записи - свой вектор времени) значений времени, при которых получены эти значения ЭКГ.
0
|
370 / 133 / 44
Регистрация: 05.02.2015
Сообщений: 883
|
|
20.06.2016, 13:04 | 8 |
И интерполяция, И апроксимация в данной задаче не подходит. для сигналов с неравномерной частотой дискритизации разработан свой математический аппарат для выделение спектров - называется "вейвлет-преобразования". тут уже на форуме давалась ссылка на книгу Смоленцова вейвлеты в matlab. так вот: там даже есть раздел обработка кардиограммы.
0
|
![]() 939 / 839 / 121
Регистрация: 23.11.2012
Сообщений: 2,489
|
|
20.06.2016, 13:06 | 9 |
minore, ну, а все же, если интерполировать (в данном случае - просто для получения равномерной сетки времени)? Если надо именно спектр?...
0
|
370 / 133 / 44
Регистрация: 05.02.2015
Сообщений: 883
|
|
20.06.2016, 13:35 | 10 |
Если надо именно спектр, то используется метод Периодограмм. в частности для неравноотстоящих временных рядов применяется Периодограмма Ломба-Скаргла.
Добавлено через 6 минут делая из неравномерного сигнала равномерный, вы, во-первых, получаете большую погрешность, во-вторых, просто напросто подменяете сигнал: у неравномерного сигнала и спектр будет тоже неравномерный, поэтому классические преобразования фурье здесь не работают. еще раз рекомендую почитать смоленцова (там и matlab и обработка сигналов) - это для экономии времени, а если хотите подробнее разобраться: 1) книги по теории обработки сигналов (Сергеенко). 2) любой справочник по вейвлетам. и тут вам нужен будет не столько мат. аппарат, реализованный в матлаб, сколько причинно-следственные связи, зачем эти преобразования возникли, и какие проблемы решают. переписывать тексты книг на форуме не буду. Добавлено через 11 минут Кстати, интерполяция применяется в теории обработки сигналов для восстановления сигнала. т.е. в тех случаях, когда частота дискритизации не меняется на всем сигнале, но она слишком низкая.
2
|
![]() 939 / 839 / 121
Регистрация: 23.11.2012
Сообщений: 2,489
|
|
20.06.2016, 13:43 | 11 |
minore, спасибо. Задавался вопросом, как анализируют такие данные (с неравномерной дискретизацией), но вот руки не доходили найти вразумительный ответ
0
|
533 / 438 / 47
Регистрация: 17.07.2013
Сообщений: 2,236
|
|
20.06.2016, 19:19 | 12 |
Напоминаю:
Смоленцев Н.К. Основы теории вейвлетов. Вейвлеты в MATLAB 2005г. - 304 стр Сергеенко A.Б. Цифровая обработка сигналов 2002г. - 608 стр. Действительно, толковые книги. Добавлено через 42 минуты Посмотрел главу по обработке ЭКГ. Там анализируется (стр. 232) ЭКГ только с постоянной частотой = 1024 отсч/сек. Добавлено через 2 минуты Дьяконов В., Абраменкова И. MATLAB обработка сигналов и изображений 2002 г 608 стр Стр. 295. Глава 5. Wavelet Toolbox. Вейвлеты Добавлено через 23 минуты Смотрим стр. 231. "Изменение частоты дискретизации" в книге: Сергеенко A.Б. Цифровая обработка сигналов 2002г. - 608 стр. Описывается и интерполяция и прореживание в целое и в дробное число раз. Все с примерами на МАТЛАБ. Безусловно, будет вносится доп погрешность. Ее можно оценить при преобразовании нЕкого модельного сигнала ЭКГ.
1
|
370 / 133 / 44
Регистрация: 05.02.2015
Сообщений: 883
|
|
09.07.2016, 14:16 | 13 |
А вы не подскажите, как полное имя Смоленцова. везде приведены только инициалы Н.К.??
Добавлено через 6 минут нашел. Николай Константинович.
0
|
![]() 4217 / 3412 / 396
Регистрация: 15.06.2009
Сообщений: 5,818
|
|
10.07.2016, 15:24 | 14 |
Не так давно уже отвечал на подобный вопрос (когда-то решал такую задачу)
Преобразование Фурье
0
|
10.07.2016, 15:24 | |
10.07.2016, 15:24 | |
Помогаю со студенческими работами здесь
14
Программа формирования прерывистого звукового сигнала частотой 1 кГц на МК-51 Получить синусоидальный сигнал с заданной частотой и длиной сигнала (Matlab -> JS) Спектрограмма в C++ СпектРограмма ЭКГ Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |