{"id":19349397,"url":"https://github.com/koldim2001/vector_ecg","last_synced_at":"2025-02-24T10:19:36.627Z","repository":{"id":184540326,"uuid":"672013505","full_name":"Koldim2001/vector_ECG","owner":"Koldim2001","description":"Получение ВЭКГ на основе ЭКГ (CLI интерфейс приложения)","archived":false,"fork":false,"pushed_at":"2023-09-26T06:01:43.000Z","size":63889,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-06T15:19:17.003Z","etag":null,"topics":["3d-graph","cli","click","dwt","ecg-analyzer","ecg-signal","feature-extraction","filtering","point-cloud","signal-processing","vecg","vector-ecg"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Koldim2001.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2023-07-28T17:28:18.000Z","updated_at":"2024-08-03T10:44:38.000Z","dependencies_parsed_at":"2023-07-28T23:01:12.322Z","dependency_job_id":"bbda8cab-40fc-45fd-bcea-64e93b5a9ff8","html_url":"https://github.com/Koldim2001/vector_ECG","commit_stats":{"total_commits":59,"total_committers":2,"mean_commits":29.5,"dds":0.3728813559322034,"last_synced_commit":"23e9d89180ec3641706e6f4ae3678395e3292e9c"},"previous_names":["koldim2001/vector_ecg"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Koldim2001%2Fvector_ECG","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Koldim2001%2Fvector_ECG/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Koldim2001%2Fvector_ECG/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Koldim2001%2Fvector_ECG/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Koldim2001","download_url":"https://codeload.github.com/Koldim2001/vector_ECG/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240457988,"owners_count":19804489,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["3d-graph","cli","click","dwt","ecg-analyzer","ecg-signal","feature-extraction","filtering","point-cloud","signal-processing","vecg","vector-ecg"],"created_at":"2024-11-10T04:26:05.701Z","updated_at":"2025-02-24T10:19:36.591Z","avatar_url":"https://github.com/Koldim2001.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Проект по векторной электрокардиографии\n\nВекторная электрокардиография (вЭКГ) - это метод, позволяющий измерять и представлять электрический вектор сердца во время сердечного цикла. Этот вектор представляет собой направление дипольного момента сердца, что дает информацию о сокращении сердечной мышцы. Врачи используют ВЭКГ для анализа движения вектора в трех основных плоскостях и его 3D отображения для диагностики и мониторинга состояния сердца. Такая информация может быть полезной для обнаружения аномалий, нарушений проводимости и оценки эффективности лечения. Векторная электрокардиография является важным инструментом в кардиологии и помогает улучшить диагностику и лечение сердечно-сосудистых заболеваний.\n\nВ данном проекте представлена программа, позволяющая производить построение вЭКГ в трех плоскостях, а также дающая возможность интерактивно взаимодействовать с 3D отображением. Для более гибкой настройки имеется возможность включать/выключать фильтрацию артефактов дыхания, менять частоту дискретизации исходного сигнала, выбирать интересующие периоды кардиоцикла и находить основные точки PQRST на сигналах всех отведений. Так же добавлена возможность производить сохранение полученных проекций вЭКГ на главные плоскости в виде масштабированных grayscale изображений для создания датасета для дальнейших исследований и ML разработок. Данная программа позволяет проводить вычисление площадей проекций петель QRS и ST-T, а также вычислять пространственный и фронтальный угол QRS-T.\n\nПодробный pdf отчет доступен по ссылке - [__ОТЧЕТ__](https://github.com/Koldim2001/vector_ECG/blob/main/utils/Отчет%20по%20проекту%20get_VECG.pdf) \u003cbr/\u003e\nВидео туториал доступен по ссылке - [__get_VECG туториал__](https://youtu.be/t_-8pExz1gs)\u003cbr/\u003e\nПрезентация новых возможностей проекта - [__get_VECG_2.0__](https://youtu.be/8WBRQ-31ZdI)\n\n## Installation:\n```\ngit clone https://github.com/Koldim2001/vector_ECG.git\n```\n```\ncd vector_ECG\n```\n```\npip install -e .\n```\n\n## Как запускать код:\n\n__Классический подход c предустановленными параметрами:__\n```\nget_VECG --data_edf=\"Data_VECG\\ECG_1.edf\" \n```\n__Более тонкая настройка параметров:__\n\nЗадание диапазона периодов ЭКГ для обработки:\n```\nget_VECG --data_edf=\"Data_VECG\\ECG_1.edf\" --n_term_start=2 --n_term_finish=6 --filt=True --f_sreza=0.5 --f_sampling=2000 --show_detected_pqrst=True --show_ecg=True --plot_3d=True --mean_filter=True\n```\n\nЗадание одного периода ЭКГ для обработки и сохранения результатов ВЭКГ в виде png файлов масштабированных проекций:\n```\nget_VECG --data_edf=\"Data_VECG\\ECG_1.edf\" --n_term_start=3 --filt=True --f_sreza=0.5 --f_sampling=2500 --show_detected_pqrst=False --show_ecg=False --plot_3d=False --qrs_loop_area=False --t_loop_area=False --show_log_loop_area=False --count_qrst_angle=False --show_log_qrst_angle=False --save_images=True --show_log_scaling=True --mean_filter=False --predict=False\n```\nЗадание одного периода ЭКГ для обработки c выводом всех логов и найденных углов с площадями:\n```\nget_VECG --data_edf=\"Data_VECG\\ECG_1.edf\" --n_term_start=3 --filt=True --f_sreza=0.5 --f_sampling=2500 --show_detected_pqrst=True --show_ecg=True --plot_3d=True --qrs_loop_area=True --t_loop_area=True --show_log_loop_area=True --save_images=False --show_log_scaling=True --count_qrst_angle=True --show_log_qrst_angle=True --mean_filter=False --predict=True\n```\n\nСписок параметров с пояснениями, которые можно передать на вход программы перед ее запуском в cli:\n```bash\n--data_edf TEXT                Путь к файлу ЭКГ формата .edf\n\n--n_term_start INTEGER         Номер интересующего для анализа периода кардиоцикла. Если необходимо\n                               построить результат за диапазон периодов, то данный параметр задает \n                               стартовое значение номера периода для записи в ЭКГ\n\n--n_term_finish INTEGER        Параметр задается исключительно при необходимости построить диапазон \n                               периодов. Значение является номером периода, до которого будет\n                               вестись запись в ЭКГ (включительно)\n\n--filt BOOL                    Включение/выключение цифровой фильтрации исходных сигналов с помощью\n                               фильтра Баттерворта 1 порядка (ФВЧ). По умолчанию фильтрация отключена\n\n--f_sreza FLOAT                Задание частоты среза ФВЧ фильтра. Используется исключительно при \n                               выборе режима --filt=True. По умолчанию = 0.7 Гц\n\n--f_sampling FLOAT             Задание частоты дискретизации. Будет проведено ресемплирование исходного\n                               сигнала с использованием линейной интерполяции. По умолчанию Fs=1500 Гц\n\n--show_detected_pqrst BOOL     Включение/выключение режима для построения ключевых точек PQRST для\n                               сигнала ЭКГ, полученных с помощью дискретных вейвлет преобразований.\n                               По умолчанию режим отключен\n\n--show_ecg BOOL                Включение/выключение режима для построения графиков всех отведений и\n                               обнаруженных QRS пиков, относительно которых ведется подсчет номеров\n                               n_term_start и n_term_finish. По умолчанию режим отключен\n\n--plot_3d BOOL                 Включение/выключение режима для интерактивного отображения 3D графика\n                               в ЭКГ. По умолчанию режим включен\n\n--qrs_loop_area BOOL           Включение/выключение режима для расчета площади QRS петли по \n                               всем проекциям.  Работает при отображении лишь одного периода ЭКГ.\n                               По умолчанию режим включен                         \n\n--t_loop_area BOOL             Включение/выключение режима для расчета площади ST-T петли по всем \n                               проекциям. Работает при отображении лишь одного периода ЭКГ. \n                               (PS: Рассчет является менее точным, чем QRS петли из-за \n                               множественных самопересечений) По  умолчанию режим отключен\n                                \n--show_log_loop_area BOOL      Включение/выключение режима для отображения отдельных петель.\n                               Доступен при включенной опции расчета площади какой-либо петли\n                               QRS_loop_area или T_loop_area. По умолчанию режим отключен\n\n--count_qrst_angle BOOL        Включение/выключение режима для вычисления пространственного угла\n                               QRST, а также проекции угла на фронтальную плоскость. Работает при \n                               отображении лишь одного периода ЭКГ. По умолчанию режим включен\n                               \n--show_log_qrst_angle BOOL     Включение/выключение режима для трехмерного отображения угла QRST на\n                               ВЭКГ. Работает при count_qrst_angle=True. По умолчанию режим отключен\n            \n--save_images BOOL             Включение/выключение режима для сохранения графиков в ЭКГ трех плоскостей\n                               в качестве png изображений. Сохранение производится в папку saved_vECG,\n                               создающуюся в корне репозитория. Работает при отображении лишь одного\n                               периода ЭКГ. По умолчанию режим отключен\n\n--show_log_scaling BOOL        Включение/выключение режима для демонстрации логов масштабирования\n                               ВЭКГ для сохранения их как изображений с исходными пропорциями. Работает \n                               при отображении лишь одного периода ЭКГ. По умолчанию режим отключен\n\n--cancel_showing BOOL          Включение/выключение режима для вывода любых графиков. Позволяет\n                               выключить отображение графических результатов для возможности\n                               использовать get_VECG в цикле по файлам ЭКГ. По умолчанию режим \n                               отключен (то есть отображение графиков включено)\n\n--mean_filter BOOL             Включение/выключение фильтра среднего для ST-T петли \n                               чтобы сгладить По умолчанию режим включен.\n\n--predict BOOL                 Включение/выключение СППР на основе PointNet и ResNet\n\n--help                         Покажет существующие варианты парсинга аргументов в CLI\n\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkoldim2001%2Fvector_ecg","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkoldim2001%2Fvector_ecg","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkoldim2001%2Fvector_ecg/lists"}