c # — алгоритм извлечения частоты сердечных сокращений из необработанного сигнала ЭКГ

Алгоритм извлечения ЧСС из необработанного сигнала ЭКГ

У меня есть сырой сигнал ЭКГ, записанный в формате BDF (также можно сделать его EDF или TXT). Теперь я должен проанализировать его в автономном режиме и извлечь скорость нагрева.

Есть ли C # или C ++ реализация такого алгоритма? Или алгоритм псевдокода, по крайней мере.

Причина, по которой я могу сделать это с нуля, заключается в том, что в последнее время я хочу включить его в систему онлайн-анализа.

Я нашел ссылки на:
Фильтр низких частот: http://en.wikipedia.org/wiki/Low-pass_filter
Фильтр верхних частот: http://en.wikipedia.org/wiki/High-pass_filter

… что, вероятно, понадобится для фильтрации исходных данных.

Также есть система, созданная для аппаратного модуля, которая может быть хорошим началом:
http://www.codeproject.com/Articles/4353/ECG-recording-storing-filtering-and-recognition

4

Решение

Алгоритм «Пан, Томпкинс» довольно прост в реализации и дает разумные результаты.

Насколько я помню, общие идеи были примерно такими:

Характерная форма ЭКГ называется QRS-комплексом, где основной пик в ЭКГ (также известный как «R-шип») имеет отчетливую форму, на чем фокусируется большинство людей. R-всплеск усиливается «согласованным фильтром» (фильтр с импульсной характеристикой, напоминающий всплеск). Я думаю, что впоследствии сигнал был поставлен через дифференциатор. Затем был простой 3-точечный поиск после самой высокой вершины.
Я также помню, что у алгоритма был «период гашения», когда поиск R-всплеска не проводился, поскольку сердце может биться только так быстро …

Посмотри на это: Обнаружение ЭКГ QRS (PDF)

6

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]