Добрый день! Меня зовут Иван, я закончил медицинский институт как врач‑терапевт и в настоящее время учусь на 2-м курсе магистратуры МФТИ по направлению «Прикладной анализ данных в медицине». Я прохожу стажировку в Центре искусственного интеллекта в медицине в Лаборатории искусственного интеллекта в Сбере и хочу рассказать о своей работе в области дистанционной фотоплетизмографии. Настоящее исследование продолжает цикл статей о дистанционной фотоплетизмографии в Лаборатории искусственного интеллекта в Сбере [44].
Фотоплетизмография (ФПГ) — это диагностический метод, который позволяет оценить изменения объема крови в микрососудах из‑за сердечных сокращений и получить таким образом информацию о работе сердца и о состоянии сосудов.
Фотоплетизмография находит широкое применение в клинической практике — она лежит в основе пульсоксиметрии (измерении уровня кислорода в крови), используется для подсчета частоты дыхательных движений, оценки тонуса и жесткости сосудистой стенки при артериальной гипертонии, ишемической болезни сердца и заболеваниях периферических сосудов. Активно исследуется применение фотоплетизмографии для предсказания риска фибрилляции предсердий, сахарного диабета, обструктивного апноэ во сне и других заболеваний. Таким образом, фотоплетизмография может использоваться как для диагностики, так и для мониторинга различных витальных показателей [39, 40].
Классическая контактная фотоплетизмография основана на оптической денситометрии — определении оптической плотности ткани. Участок кожи, например, на пальце, освещается красным и инфракрасным светом, который после отражения или прохождения через ткань регистрируется сенсором. При этом наблюдаются пульсации света, отражающие пульсирующий характер кровотока в микрососудах. В зависимости от расположения источника и приемника светового сигнала различают два типа фотоплетизмографических сенсоров: 1) «на пропускание» (трансмиссионные сенсоры), когда источник и приемник расположены с противоположных сторон от объекта исследования, например, пальца; 2) «на отражение» (рефлективный сенсоры), когда источник и приемник расположены с одной стороны от объекта исследований (рис. 1) [2]. Пример получаемого пульсового сигнала приведен на рис. 2.
В последние годы в качестве альтернативы контактной фотоплетизмографии активно развивается дистанционная фотоплетизмография. Она основана на том, что изменение кровенаполнения мелких сосудов влияет на процесс отражения света [11]. Отраженный свет записывается видео‑камерой и анализ полученного видео позволяет выделить искомый пульсовой сигнал. При этом не требуется использование каких‑либо специальных сенсоров как в классической ФПГ.
Мы начнем с описания физиологических основ и алгоритмов дистанционной фотоплетизмографии, после чего обсудим ряд технических аспектов, влияющих на ее точность и эффективность. Последний раздел статьи посвящен проведенным экспериментам и их результатам.
Дистанционная фотоплетизмография основана на том, что изменение кровенаполнения сосудов из‑за сердечных сокращений вызывает незначительные изменения окраски кожи. Данные изменения неразличимы для человеческого глаза, но могут быть проанализированы с помощью специальных алгоритмов для получения пульсового сигнала. Последний может быть использован для подсчета частоты сердечных сокращений или оценки вариабельности сердечного ритма.
Таким образом, в дистанционной ФПГ можно выделить несколько стандартных шагов, общих для всех классических алгоритмов обработки сигналов (рис. 3). Сначала на кадрах видеозаписи выбирается область интереса — лицо или его отдельный регион. Далее извлекается RGB‑сигнал — считается среднее значение RGB‑каналов в каждом кадре. Полученный RGB‑сигнал может дополнительно фильтроваться, а далее используется для извлечения пульсового сигнала с помощью одного из алгоритмов. Наконец, пульсовой сигнал фильтруется и на его основе производится подсчет частоты сердечных сокращений.
В настоящее время существует ряд методов обработки сигналов для дистанционной фотоплетизмографии. Мы опишем несколько из них, разберем преимущества и недостатки.
Цветовые каналы в RGB‑видео несут различную пульсовую информацию. Зеленый G‑канал содержит наиболее выраженный пульсовой компонент, так как (окси)‑гемоглобин в эритроцитах сильнее поглощает зеленый спектр по сравнению с красным. Кроме того, зеленый свет проникает глубже в кожу по сравнению с синим светом и таким образом лучше достигает сосудистого русла [3]. Результаты исследования на нескольких датасетах, показали, что наиболее информативным во всех случаях является G‑канал. На втором месте чаще всего находится B‑канал, а на третьем — R‑канал, однако в отдельных случаях разница между B‑ и R‑каналами не является статистически значимой [1]. Когда объем крови в сосуде возрастает, то большое количество гемоглобина поглощает больше света, поэтому отраженная часть света уменьшается, что и ведет к формированию пульсаций в сигнале [41].
Простейшая идея — это использовать G‑канал как наиболее информативный для определения пульса, что и было предложено в одном из первых методов дистанционной фотоплетизмографии, который получил название Green [3]. Первый этап, стандартный для большинства алгоритмов, состоит в пространственной нормализации. На каждом кадре в видео выбирается область интереса (лицо или отдельная его часть) и считается среднее значение G‑канала среди всех пикселей в данной области. Аналогичным образом проводится усреднение и двух других каналов, в методах, которые их используют. В методе Green сигнал из G‑канала фильтруется, чтобы оставить частоты в диапазоне соответствующем 40–240 ударам в минуту, после чего доминантная частота сигнала используется для оценки частоты пульса.
Однако, при таком подходе не учитывается информация, доступная в других каналах. Поэтому вслед за этим методом был предложен алгоритм G‑R, который дополнительно использует красный канал, вычитая его из зеленого [4]. Вычитание R‑канала оказывает положительный эффект, так как учитывает физиологическую информацию — G‑ и R‑каналы содержат максимальную и минимальную пульсовые амплитуды, поэтому их комбинация максимизирует пульсовой сигнал. Несмотря на свою простоту, данный метод показывает достаточно хорошие результаты (сравнение с другими методами приведено в разделе 3 в табл. 2).
Видимые изменения окраски кожи происходят согласно физиологическим особенностям отражения света от кожи, поэтому для лучшего понимания алгоритмов дистанционной фотоплетизмографии нам необходимо рассмотреть механизмы данного процесса. Согласно дихроматической модели при падении света на кожу одна его часть отражается непосредственно от поверхности кожи (зеркальное отражение), а другая — проникает в подлежащие ткани, где частично рассеивается, а частично, достигнув кровеносных сосудов, — отражается от них (диффузное отражение) [5, 11]. Описанный процесс схематично проиллюстрирован на рис. 4. Очевидно, что только диффузно отраженная часть светового потока содержит информацию о кровенаполнении сосудов и может использоваться для анализа пульса.
Световой поток, падающий на сенсор RGB-камеры, может быть представлен в виде зависимой от времени функции:
где — это среднее значение RGB‑каналов в области интереса,
— интенсивность светового потока, которая модулируется двумя компонентами — зеркальным отражением
и диффузным отражением
. Последний компонент
— это шумовой сигнал сенсора камеры. Однако мы делаем допущение, что благодаря относительному большому размеру области интереса шум камеры
является незначимым и может не учитываться. В отдельных областях зеркальное отражение может преобладать над диффузным. Но мы также делаем допущение, что благодаря эффективному выбору области интереса участки с доминирующим зеркальным отражением не рассматриваются.
Зеркальное отражение изменяется при движениях, так как последние влияют на геометрические отношения между источником света, поверхностью кожи и камерой. Таким образом,
где – это спектр света,
– стационарный компонент, а
– компонент, зависимый от времени, а точнее говоря – от движений.
Диффузное отражение зависит от поглощения и рассеивания света в тканях под кожей и определяется в первую очередь постоянным уровнем меланина – пигмента, обуславливающим цвет кожи, и зависимым от времени (от кровенаполнения сосудов) уровнем гемоглобина. Таким образом,
где — постоянный компонент цвета кожи,
— постоянный коэффициент отражения,
— относительная сила пульсового сигнала в RGB каналах, а
— непосредственно пульсовой сигнал.
Подставив и
в
получим:
Постоянные компоненты зеркального и диффузного отражений могут быть объединены в единый компонент:
где – цвет отражаемого светового потока, а
– сила отражения. Подставим
в
, получим:
где яркость светового потока также представлена в виде постоянного
и зависимого от времени
компонентов.
В сигнале, получаемом из светового потока, условно различают две части – пульсирующую переменную часть , которая зависит от пульса, и непульсирующую медленно изменяющуюся часть
, которая определяется медленным изменением кровенаполнения венозных и артериальных сосудов, а также изменением объема межклеточной жидкости и другими физиологическими процессами, влияющими на оптические свойства биологической ткани [2]. Раскрыв скобки в
, можно упростить выражение, так как компонент
на порядок меньше компонента
, и их произведения
и
могут быть отброшены:
Для наглядности еще раз отметим роль отдельных компонентов в :
– это постоянная интенсивность света;
– это изменения интенсивности света, которые вызваны, главным образом, движениями;
– это компонент, связанный с зеркальным отражением света от поверхности кожи;
– это искомый пульсовой сигнал.
Таким образом, – это линейная комбинация сигналов, и ключевая задача алгоритма дистанционной фотоплетизмографии состоит в извлечении пульсового сигнала из
. Существующие методы можно разделить на две категории – основанные на слепом разделении сигнала (методы главных и независимых компонент) и учитывающие физиологические особенности процесса светоотражения. Мы начнем с рассмотрения алгоритма CHROM, который предоставит интуитивно понятную мотивацию для ряда ключевых концепций, используемых и в других алгоритмах.
Изменение амплитуды пульсового сигнала в каждом из RGB-каналов зависит от интенсивности источника света [12, 11]. Для того, чтобы устранить постоянное влияние интенсивности и цвета источника света на пульсовой сигнал следует выполнить временную нормализацию каждого из RGB-каналов – разделить сигнал в каждом из каналов на среднее значение сигнала в канале за время
:
Нормализация во времени является одним из ключевых этапов алгоритмов, которые основаны на работе в нормализованном во времени RGB-пространстве. К таким алгоритмам относятся CHROM и POS.
Однако временная нормализация не может устранить влияние изменений интенсивности светового потока за период, во время которого проводится нормализации [12]. Подобные изменения обычно возникают из-за движений поверхности кожи относительно источника света. Предположив, что изменения интенсивности одинаковы для всех RGB-каналов, можно устранить их, взяв отношение двух нормализованных во времени RGB-каналов. Так как, как уже было отмечено, G- и R-каналы содержат максимальную и минимальную пульсовые амплитуды, можно взять их отношение, получив пульсовой сигнал, на который устранено влияние движений:
Единица вычитается для приведения сигнала к виду, где среднее значение равно нулю. Недавно были также предложены методы GB и GRGB, в которых вместо отношения используются соответственно
и
[6].
Отношение двух каналов позволяет устранить влияние изменений интенсивности, но не может убрать влияние зеркального отражения от поверхности кожи. Отметим, что, в то время как диффузный компонент, несущий пульсовой сигнал, различен для RGB-каналов из-за особенностей абсорбции света тканями, зеркальный компонент, несущий шум, является одинаковым во всех RGB-каналах.
При использовании источника белого света зеркальный компонент привносит одинаковую фракцию белого света, которую можно устранить, используя разницу между цветовыми каналами, то есть цветность (chrominance). Из трех RGB-каналов можно получить два ортогональных сигнала цветности:
При этом изменения, вызванные пульсовой волной, будут различаться для них, а изменения, вызванные движениями, будут одинаковыми. Используя описанный ранее подход {(9)}, можно взять их отношение, чтобы устранить влияние движений, получив пульсовой сигнал:
Еще раз отметим смысл каждого из данных этапов:
1) временная нормализация позволяет устранить влияние постоянного уровня интенсивности света
на пульсовой сигнал;
2) разница между цветовыми каналами позволяет устранить зеркальное отражение , одинаковое во всех RGB каналах, получив в результате два сигнала цветности
;
3) отношение двух сигналов цветности в позволяет устранить влияние изменений интенсивности света из-за движений
.
Данный подход, однако, справедлив только при использовании источника белого света. Под источником света другого цвета алгоритм будет работать хуже. Для устранения означенного недостатка можно выполнить стандартизацию цвета кожи. В ходе эксперимента было установлено, что стандартизированный цвет кожи под источником белого света почти одинаков у всех людей:
Стандартизированный цвет кожи, конечно же, отличается в зависимости от цветотипа кожи (уровня меланина), однако различия невелики и потому пренебрежимы. Хотя более высокий уровень меланина усиливает абсолютное поглощение света кожей, поглощение света в разных RGB-каналах относительно друг друга остается почти одинаковым. Поэтому стандартизированный цвет кожи под источником белого света почти одинаков у всех людей [11].
Таким образом, для того чтобы выполнить поправку для источника света другого цвета, необходимо выполнить временную нормализацию каждого RGB-канала, используя , а затем умножить на стандартизированный вектор цвета кожи
:
Далее подставим в
:
Отметим, что изначально авторы в выбрали
как
, однако в
, чтобы убрать дробные коэффициенты
, используют
. Очевидно, что результат будет тем же самым. Также отметим, что в
представлен как
, a
– как
. Однако в
мы дополнительно добавляем знаменатели, для того чтобы вклад каждого из цветовых каналов имел корректный вес, соответствующий таковому при источнике света белого цвета. Мы можем расписать
чуть подробнее, чтобы увидеть, как получаются итоговые коэффициенты:
Аналогичным образом:
Далее мы можем упростить , используя свойства логарифмов и серию Тейлора:
Так как все аргументы логарифмов в близки к единице, то
Наконец, отметим, что амплитуда пульса может быть сравнительно маленькой относительно
и
. Если стандартизация цвета кожи окажется не совсем точной, то
и
будут иметь разные амплитуды. Для коррекции можно использовать следующий механизм, называемый альфа-тюнингом:
Он обусловлен тем, что пульсовой сигнал находится в противофазе между и
, а искажения из-за изменений интенсивности светового потока при движениях находятся в фазе между
и
. Таким образом, когда доминирует пульсовой компонент, то
и
находятся в противофазе, и поэтому их разность помогает усилить пульсовой сигнал. Если же доминируют искажения, обусловленные движениями, то разность их двух сигналов, находящихся в фазе, позволяет устранить данные искажения. Полученный алгоритм
основан на использовании двух сигналов цветности (chrominance), поэтому называется CHROM [12].
Метод главных компонент (PCA) и метод независимых компонент (ICA) [13, 14] позволяют разделить RGB сигнал на отдельные компоненты
, соответствующие интенсивности света, зеркальному отражению от кожи и диффузному отражению, несущему искомый пульсовой сигнал, с помощью матрицы
:
Хотя алгоритмы слепого разделения сигналов на первый взгляд сильно отличаются от метода CHROM, отметим, что все они направлены на выделение пульсового сигнала как некой линейной комбинации сигналов из трех RGB-каналов. CHROM использует для этого постоянные во всех случаях коэффициенты в :
a PCA и ICA – линейную комбинацию, определенную на основе :
Разница между PCA и ICA заключается в их допущениях относительно указанных компонент: PCA предполагает, что они некоррелированные, а ICA – что они независимые. После разложения из выбирается наиболее периодический сигнал как отражающий пульсовой компонент. Вследствие этого данные методы не работают, если движения человека также являются периодическими (например, при занятиях спортом). Более того другие частотные составляющие (например, дыхание) также затрудняют нахождение
[5]. Наконец, для корректного определения пульса необходимо использовать достаточно длинное видео (около 25 с), в то время как CHROM показывает хорошие результаты при работе и на значительно более коротких фрагментах [12]. Таким образом, благодаря учету особенностей физиологии и процесса отражения света CHROM демонстрирует лучшие результаты.
Прежде чем перейти к описанию метода POS отметим более детально роль временной нормализации в дихроматической модели
[5].
Среднее во времени значение RGB-каналов отражает постоянный в течение определенного времени компонент светового потока:
, и может использоваться для временной нормализации исходного сигнала
путем определения матрицы нормализации
, такой что
Таким образом, получим нормализованный во времени сигнал :
Отметим, что — это изменение интенсивности света в направлении вектора
, который является вектором нормализованного во времени цвета кожи. Это наибольший компонент, изменения которого обусловлены движениями, и он одинаково представлен во всех RGB каналах.
— это компонент зеркального отражения, а
— это пульсовой сигнал.
Также приведем сигнал к форме, где среднее значение цвета равно нулю:
Перед обсуждением метода POS мы сделаем еще одно отступление и обсудим описанный ранее метод CHROM с позиций дихроматической модели [5]. Это позволит в дальнейшем подчеркнуть сходства и различия алгоритмов POS и CHROM, которые очень близки друг другу и отличаются, в сущности, лишь порядком выполняемых операций.
Метод CHROM работает в нормализованном во времени RGB-пространстве и состоит из двух ключевых и одного промежуточного этапов:
1) Проекция в направлении стандартизированного вектора цвета кожи под источником белого света , чтобы выполнить поправку для источника света другого цвета. Данный этап является промежуточным так как необходим только в условиях освещения не соответствующих белому свету;
2) Проекция в ортогональную относительно зеркального отражения плоскость, чтобы устранить влияние зеркального отражения. В дихроматической модели это – проекция ортогональная компоненту
;
3) Альфа-тюнинг для устранения искажений, вызываемых изменением интенсивности светового потока из-за движений.
Следуя описанию в [5], мы можем объединить первые два этапа в умножение на единую проекционную матрицу. На основе вектора создадим диагональную матрицу
, так что
:
Матрица для проекции в ортогональном относительно зеркального отражения направлении — это матрица коэффициентов, используемых для получения двух ортогональных сигнала цветности в
:
где строки соответствуют двум сигналам цветности, а столбцы – коэффициентам RGB-каналов. Умножим и
:
Чтобы показать эквивалентность полученной проекционной матрицы коэффициентам в оригинальной статье про CHROM выполним несколько простейших преобразований. Разделим каждую строку на наименьший по модулю ненулевой элемент:
Умножив первую строку на , мы получим матрицу коэффициентов, как и в оригинальной статье:
Возвращаясь к дихроматической модели , рассмотрим результат проекции нормализованного во времени сигнала:
Так как проекция является ортогональной относительно зеркального отражения , то
, поэтому в
данный компонент исчезает.
Таким образом, мы получили два сигнала цветности , к которым далее применяется процедура альфа-тюнинга для устранения искажений, вызываемых изменением интенсивности светового потока из-за движений, то есть для устранения компонента
Наконец, мы обсудим State-of-the-art метод POS [5], который, как и CHROM, работает в нормализованном во времени RGB-пространстве, однако выполняет этапы проекции и альфа-тюнинга в обратном порядке.
1) Сначала устраняются искажения, вызываемые изменением интенсивности светового потока из-за движений, с помощью проекции в плоскость, ортогональную относительно направления интенсивности светового потока, то есть в направлении, ортогональном компоненту . Данный компонент соответствует нормализованному оттенку кожи в дихроматической модели
. Поэтому получающая проекция – это проекция в плоскость, ортогональную нормализованному оттенку кожи. По этой причине метод POS и называется – метод проекции в плоскость, ортогональную оттенку кожи (Plane Orthogonal to Skin). Так как проекция является ортогональной относительно оттенка кожи, то нет необходимости выполнять поправку для источника света другого цвета. По этой причине в методе POS отсутствует этап умножения на стандартизированный вектор цвета кожи
.
При умножении на проекционную матрицу нормализованного во времени сигнала
получим согласно дихроматической модели
:
Так как проекция является ортогональной относительно интенсивности светового потока (или иначе говоря, нормализованного оттенка кожи) , то
. Поэтому данный компонент исчезает в
. Каким же образом мы можем выбрать проекционную матрицу
? Зависящий от времени компонент
— это скаляр, поэтому он может изменить только длину вектора
, не влияя на его направление. Поэтому нам достаточно, чтобы
. Нам также необходимо, чтобы оба компонента в
— обозначаемые
и
— были ортогональны друг другу. Таким образом, необходимо, чтобы выполнялось два следующих условия:
Однако, каким же образом выбрать коэффициенты для проекционной матрицы? Существует много возможных вариантов. Для ответа на данный вопрос сделаем небольшое отступление.
Ранее в определенных стандартных условиях (галогеновая лампа в качестве источника света и камера UI-2220SE‑C для записи видео) было установлено, что в нормализованном во времени RGB‑пространстве вектор пульсового объема имеет стандартные значения [11]: . Данный вектор может использоваться напрямую для дальнейшего нахождения пульса, что лежит в основе другого алгоритма дистанционной фотоплетизмографии — PBV (Pulse Blood Volume). Такой подход обеспечивает высокую эффективность даже при существенных движениях человека. Однако его точность зависит от соответствия условий, при которых оценивается пульс, тем стандартным условиям, при которых был подсчитан данный вектор. В методе POS авторы использовали знание данного вектора для того, чтобы приблизительно оценить как выбранная проекционная матрица влияет на силу пульсового сигнала (рис. 5).
Оказалось, что сила получаемого пульсового сигнала зависит от того, в какую область плоскости, ортогональной оттенку кожи, происходит проекция пульсового сигнала. Поэтому проекционная матрица должна создаваться не произвольно, а с учетом указанных ранее физиологических особенностей — коэффициенты для RGB‑каналов берутся в порядке уменьшения пульсовой амплитуды. Напомним, что наибольшая амплитуда у G‑канала, а наименьшая — у R‑канала. Таким образом, авторы выбрали следующую проекционную матрицу
Мы можем убедиться, что оба условия в действительно выполняются:
При умножении на полученные компоненты в
эквивалентны следующим комбинациям RGB-каналов:
. При этом оба компонента несут положительную пульсовую информацию, поэтому находятся в фазе.
2) Второй, и последний, этап POS — это альфа‑тюнинг для устранения зеркального отражения (напомним, что в методе CHROM альфа‑тюнинг используется для устранения искажений из‑за изменений интенсивности светового потока при движениях). Так как из‑за особенностей проекционной матрицы пульсовые компоненты в и
находятся в фазе, то вместо их вычитания выполняется их сложение:
Таким образом, когда доминирует пульсовой компонент, то и
находятся в фазе и поэтому их сумма помогает усилить пульсовой сигнал. Если же доминируют находящиеся в противофазе искажения, вызванные зеркальным отражением, то разность их двух сигналов, позволяет устранить данные искажения.
Подводя итог, еще раз подчеркнем сходства и различия методов CHROM и POS в табл. 1. Два этапа — проекция и альфа‑тюнинг — выполняются в обратном порядке в данных методах, что и обуславливает их различия.
Таблица 1. Сравнительный анализ алгоритмов CHROM и POS
CHROM | POS |
Временная нормализация для устранения влияния постоянного уровня интенсивности света | Временная нормализация для устранения влияния постоянного уровня интенсивности света |
Проекция в направлении стандартизированного вектора цвета кожи под источником белого света | – |
Проекция в плоскость, ортогональную зеркальному отражению, – позволяет убрать зеркальное отражение | Проекция в плоскость, ортогональную изменения интенсивности светового потока, –позволяет убрать искажения из-за изменения интенсивности светового потока из-за движений |
Альфа-тюнинг для устранения искажений из-за изменения интенсивности светового потока из-за движений | Альфа-тюнинг для устранения зеркального отражения |
Пульсовые компоненты находятся в противофазе | Пульсовые компоненты находятся в фазе |
В заключение, мы рассмотрим метод OMIT, который был предложен в 2023 г. и основан на трансформации кадров с помощью ортогональной матрицы (Orthogonal Matrix Image Transformation). В данной работе авторы также разработали эффективный алгоритм для выбора области интереса, что позволяют улучшить результаты всех методов дистанционной фотоплетизмографии. Сам же метод OMIT является весьма простым с точки зрения мотивации и исполнения, однако несмотря на это является очень эффективным, в ряде случаев превосходя алгоритм POS.
Метод OMIT основан на разложении матрицы, содержащей средние значения RGB в каждом кадре видео, на ортогональные компоненты с помощью QR‑разложения. Матрица средних значений RGB-каналов в каждом кадре видео имеет форму , где
— число кадров, а
— средние значения трех RGB каналов. Данная матрица
может быть разложена на две другие матрицы —
, которая содержит ортонормальный базис, и верхнюю треугольную матрицу
, которая содержит коэффициенты, позволяющие представить оригинальную матрицу
в базисе
. Таким образом,
Для эффективного разложения авторы используют метод отражений Хаусхолдера. В полученной матрице есть 3 столбца, которые образуют ортонормальный базис для исходной матрицы
. Ортонормальность означает, что векторы являются ортогональными друг другу и при этом их норма равна единице. Первый столбец
в матрице
показывает направление наиболее сильных изменений (наибольшей дисперсии) в исходном RGB пространстве. Данные изменения связаны в большинстве случаев с изменением цвета кожи при изменении интенсивности освещения из-за движений. Они также могут быть связаны с шумовым сигналом камеры или другими артефактами. Таким образом, означенное направление связано с факторами, которые затрудняют выявление пульсового сигнала. Для устранения влияния данных факторов выполняется проекция в направлении, ортогональном вектору
.
Проекционная матрица вычисляется следующим образом:
где — это единичная матрица размерностью
. Далее выполняется проекция исходной RGB-матрицы
и получается новая матрица
:
В полученной матрице первый столбец
соответствует направлению наиболее сильных изменений, вызванных различным шумом, которые были устранены с помощью проекции. Тогда как второй столбец
содержит искомый пульсовой сигнал после устранения шумового сигнала. Пульсовой сигнал
после этого, как и в других методах, может быть дополнительно отфильтрован.
Описанные в прошлом разделе алгоритмы позволяют выделить пульсовой сигнал. Однако на их эффективность влияет целый ряд факторов, которые мы и обсудим в настоящей части.
Первый этап при применении любого из алгоритмов дистанционной ФПГ — это выбор области интереса в видеозаписи [7]. Чаще всего для детекции лица используется алгоритм Виолы‑Джонса, который использует функцию Хаара и интегральное изображение для обнаружения и формирования прямоугольной рамки, ограничивающей лицо. Данный алгоритм отличается высокой скоростью, однако при его применении в области интереса остается часть фона. Более того, движения глаз, рта, блики от очков могут существенным образом влиять на подсчет пульса. Поэтому, исходя из стандартных пропорций человеческого лица, можно обрезать область интереса, исключив фон и глаза, и оставим только центральную часть лица или лоб. Более точный метод для детекции лица имплементирован в Mediapipe Face Mesh и позволяет детектировать 468 точек‑ориентиров на лице (рис. 6) [45]. Последние позволяют точным образом выделить лицо, убрав фон, убрать глаза и область рта или же выбрать отдельные участки, например часть лба или щек. Визуализация различных вариантов выбора области интереса приведена на рис. 7.
Выбор всего лица в качестве области интереса обеспечивает более стабильную оценку пульсового сигнала — за счет большей площади устраняется влияние шума в отдельных регионах. Однако при этом различные артефакты (очки, борода, усы и т. д.) могут затруднять точную оценку пульса. Более того, нужно отметить, что отдельные регионы лица отличаются друг от друга по интенсивности кровоснабжения и толщине эпидермиса, что напрямую влияет на процесс светоотражения. В связи с этим в литературе весьма популярен выбор лишь отдельных участков на лице. Сравнительный анализ показал, что наиболее перспективными являются области щек и лба, и именно данные регионы достаточно часто используются в качестве областей интереса в различных исследованиях [20].
Для выбора области интереса также возможно применение нейронных сетей, которые сегментируют изображение на отдельные части — фон, кожу, глаза, волосы и т. д. Так, в библиотеке pyVHR [31] используется модель для билатеральной сегментации BiSeNet [32] на основе ResNet18. Однако в ходе наших экспериментов при ее использовании качество сегментации оказалось низким. Более сложная модель SegFormer на основе архитектуры трансформера показала лучшие результаты [33]. Но обработка видео даже с использованием графического процессора в таком случае оказывается весьма медленной. Более того, модель оказалась неспособной убирать мелкие элементы, например бороду или усы, поэтому мы отказались от ее использования. Сравнение сегментации с помощью BiSeNet и SegFormer приведено на рис. 8.
Значительно более простым, но при этом более эффективным оказался подход на основе адаптивной оценки цвета кожи [34]. На первом этапе происходит выбор области лица, например с помощью алгоритма Виолы и Джонса, что позволяет убрать большое количество пикселей фона, оставив преимущественно пиксели кожи. Далее полученное изображение конвертируется в цветовое пространство HSV. В одном из каналов, происходит разбиение частоты пикселей различных цветов по гистограммам. Так как благодаря выбору области интереса большая часть пикселей фона была убрана, то доминирующим является цвет пикселей кожи, что и позволяет выбрать гистограмму с наибольшим числом пикселей . После этого на основе эмпирически подобранного коэффициента
выбирается диапазон вокруг данной гистограммы с помощью следующей формулы:
Пиксели, имеющие цвет за пределами данного диапазона, не являются пикселями кожи и поэтому закрашиваются черным цветом. Данный подход отличается вычислительной простотой и позволяет эффективно убрать различные артефакты, затрудняющие оценку пульсового сигнала, — очки, волосы, бороду и усы. Результаты применения данного алгоритма приведены на рис. 9.
В ряде работ вместо выбора фиксированных регионов предлагается их динамическая оценка. Так, в [35] авторы предложили отслеживать 7 регионов, разделить каждый из них на небольшие квадраты, для каждого из полученных квадратов посчитать качество сигнала и затем найти пульсовой сигнал как среднее взвешенное всех сигналов, где вес выше у сигналов с лучшим качеством (рис. 10).
Схожий подход был предложен и в [36], однако вместо отслеживания отдельных регионов выполнялось отслеживание всего лица. После оценки отношения сигнала к шуму для каждого из квадратов, выбирались лучшие из них и на их основе подсчитывался пульсовой сигнал (рис. 11).
В [37-38] авторы предложили использовать не фиксированное разбиение на квадраты, а на разделение на суперпиксели, отслеживаемые во времени, — темпоральные суперпиксели. Как и в других работах выбор оптимальных регионов выполнялся с помощью отношения сигнала к шуму (рис. 12).
Авторы алгоритма OMIT предложили детальный подход для выбора области интереса, который позволил значительно улучшить эффективность всех алгоритмов дистанционной фотоплетизмографии [21]. На первом этапе определяется 85 точек‑ориентиров на лице. Они соединяются между собой, разделяя лицо на треугольники, которые затем проецируются в фиксированные координаты, соответствующие лицу человека во фронтальной проекции (рис. 13). Каждый кадр видео проецируется в данные фиксированные координаты, что позволяет измерять пульсовой сигнал в одних и тех же участках лица.
После проекции в фиксированные координаты производится разделение изображения на сравнительно крупные квадраты, в каждом из которых оценивается качество сигнала. Оценка пульса выполняется на основе квадратов с наилучшим сигналом (рис. 14).
Для оценки качества сигнала в каждом из регионов применяется следующий подход:
1) Проводится оценка дисперсии и исключаются регионы с нулевой дисперсией, как не несущие полезной информации.
2) Подсчитывается фрактальная размерность Катца — показатель, который оценивает степень иррегулярности сигнала и остроты пиков и характеризует насколько комплексным является характер сигнала. Далее находят отношение фрактальной размерности сигнала в одном регионе к фрактальной размерности глобального сигнала, полученного со всего лица, и выбираются регионы со значением >0,85 — это позволяет учитывать только те регионы, в которых сигнал имеют сопоставимые характеристики с глобальным сигналом. Таким образом, убираются регионы, несущие преимущественно шумовой сигнал.
3) Выполняется анализ детрендированных флуктуаций, который помогает оценить корреляцию между двумя нестационарными временными рядами. Данный метод позволяет проанализировать корреляцию между сигналом в отдельном регионе и глобальным регионом с помощью ‑экспоненты. Если
, то между временными рядами нет корреляции, если
— корреляция положительная, а если
, то корреляция отрицательная. Для дальнейшего анализы выбираются только регионы с положительной корреляцией.
После выбора регионов согласно означенным критериям, пульсовые сигналы из них суммируются во временном домене, позволяя получить итоговый пульсовой сигнал.
Наконец, в [22] авторы предложили оригинальный подход, основанный не на определении наилучших областей интереса, а на выборе оптимальных сигналов. Для этого они предложили отслеживать множество небольших регионов, определить в каждом из них пульсовой сигнал, а затем выполнить их спектральную кластеризацию, получив две группы. Сигналы с хорошим качеством имеют приблизительно одинаковый спектр и попадают в один кластер, тогда как сигналы с плохим качеством имеют большую внтуригрупповую (отличаются между собой) и межгрупповую (отличаются от сигналов в хорошем кластере) дисперсию. Итоговый пульсовой сигнал определяется на основе данных из хорошего кластера.
Одним из ключевых этапов является фильтрация полученного сигнала для устранения шума. При этом возможна как фильтрация RGB‑сигнала, так и полученного после применения одного из алгоритмов пульсового сигнала. Последний подход является более распространённым. Прежде всего используются классические фильтры для выбора частот в определенном диапазоне, соответствующем возможной частоте сердечных сокращений — от 40 до 240 ударов в минуту (0,75–3 Гц), а частоты ниже и выше данного диапазона исключаются. Чаще всего применяют фильтр Баттерворта, в отдельных работах — фильтра Чебышева 1 или 2 типа, фильтр Савицкого‑Голея, эллиптический фильтр, вейвлет‑фильтр и др., а также скользящий средний фильтр [9]. Сравнительный анализ указанных фильтров показал, что наиболее оптимальным является фильтр Чебышева 2 типа [9]. Для ЭКГ был предложен фильтр для устранения тренда [10], и он находит свое применение и в области дистанционной ФПГ. Результаты применения отдельных фильтров приведены на рис. 15.
Был также разработан ряд специальных фильтров, например, фильтр для выбора амплитуды [16]. Последний основан на том факте, относительная пульсовая амплитуда варьируется в определенном диапазоне, который может быть представлен как функция, зависимая от RGB‑каналов. В дальнейшем авторы предложили фильтр для фильтрации частот на основе искажений цветового сигнала [17], основанный на том факте, что пульсовой компонент и компоненты, связанные с изменением интенсивности и зеркальным отражением, имеют разные спектры отражения.
Наконец, существует ряд работ по применению методов машинного и глубокого обучения для фильтрации сигналов, например — использование метода опорных векторов [19] или нейронной сети долгой краткосрочной памяти для восстановления формы полученного пульсового сигнала [18].
Несмотря на большое число предложенных методов, сравнительно мало исследований посвящено сравнению эффективности различных фильтров и их комбинаций. В настоящей работе мы оценили эффективность ряда наиболее распространенных фильтров и их комбинаций для различных методов ФПГ.
После получения пульсового сигнала проводят подсчет частоты сердечных сокращений (ЧСС) [7]. Наиболее распространенным является подход на основе спектрального анализа. Полученный сигнал конвертируется в частотный спектр с помощью быстрого преобразования Фурье или дискретного косинусного преобразования. Распределение спектральной плотности мощности (пример приведен на рис. 16) оценивается как функция частоты с помощью метода Велча в диапазоне от 0,7 до 3 Гц, что соответствует ЧСС от 40 до 180 ударов в минуту. Используемый диапазон в отдельных работах может немного различаться, например от 0,75 до 2,5 Гц (45 — 150 ударов в минуту). Частота с наибольшей мощностью выбирается как соответствующая пульсовому сигналу и используется для подсчета ЧСС:
. Менее распространенным является поход на основе детекции пиков, соответствующих сокращениям сердца в полученном сигнале, и их подсчете.
Наиболее показательной метрикой является средняя абсолютная ошибка (MAE), показывающая абсолютную разницу между истинной ЧСС, определенной на основе ЭКГ или контактной ФПГ, и ЧСС по данной дистанционной ФПГ, усредненной по числу оцениваемых примеров: . Во многих работах также применяется отношение сигнала к шуму для оценки информативности получаемого сигнала. Однако данная метрика, хотя и удобна для технического сравнения методов, не позволяет получить представление об их практической эффективности при оценке ЧСС. По этой причине мы сосредоточимся на использовании MAE.
Ключевым вопросом является методика оценки результатов. В одних работах для подсчета ЧСС используется все видео, а в других — видео разделяется на сегменты определенной длины, например по 5 или 10 секунд, и ЧСС определяется отдельно для каждого из сегментов, после чего метрика усредняется по всем сегментам. Более того, сегменты могут не пересекаться (например, 20-секундное видео можно разделить на 2 сегмента по 10 секунд), а могут идти с наложением (например с шагом в 1 секунду — в этом случае получится 11 сегментов). К сожалению, во многих работах авторы не указывают детали, что затрудняет возможность сравнения результатов [8]. Размер временного окна существенным образом влияет не только на оценку ЧСС с помощью дистанционной ФПГ, но и на истинную ЧСС, определяемую на основе ЭКГ или контактной ФПГ. Поэтому во всех случаях рекомендуется явно указывать данные параметры [15].
Для дистанционной ФПГ чаще всего используется RGB‑сигнал. Однако в ряде работ исследовались перспективы других цветовых пространств. Примеры трансформаций приведены на рис. 17. При сравнении 7 цветовых пространств — RGB, HSL, HSV, HIS, XYZ, YUV оказалось, что наиболее информативными были каналы Hue в HSL/HSV/HIS, Y в XYZ, U в YUV и G в RGB [23]. В другой работе при сравнении RGB, HSI, CIE Lab, YCrCb наиболее информативной оказалась комбинация Cr и Cb каналов в YCrCb [24]. Авторы также предложили модифицировать алгоритм POS, используя вместо комбинаций RGB сигналов, предложенных в оригинальной работе, Cr и Cb каналы. Трансформация из RGB в YCrCb пространство происходит следующим образом [25]:
Поэтому в модифицированном POS оригинальная проекционная матрица была заменена на следующую:
Авторы отметили, что это повысило отношение сигнала к шуму в получаемом пульсовом сигнале, однако в ходе наших экспериментов абсолютная ошибка при использовании такого подхода оказалась большей по сравнению с оригинальным методом POS. В других работах было также отмечено преимущество использования HSI и YCrCb [26] и CIE Lab [27, 28] пространств по сравнению с RGB. Однако результаты являются противоречивыми. При непосредственном сравнении различных цветовых пространств наименьшая ошибка наблюдалась именно в RGB‑пространстве, тогда как использование HSI или YCrCb значительно ухудшало результаты [29]. В наших экспериментах цветовая трансформация в CIE Lab привела к некоторому улучшению результатов в датасете UBFC‑rPPG, однако для других датасетов это привело к увеличению ошибок.
Настоящая работа была посвящена сравнению эффективности различных методов выбора области интереса и применения фильтров и их комбинаций для дистанционной фотоплетизмографии. Для анализа использовалось 3 датасета — UBFC‑rPPG (40 видео) [37], MCD‑rPPG (были выбраны 40 видео) и MMPD (было выбрано по одному видео для каждого из 33 участников) [43]. Каждое видео разделялось на непересекающиеся сегменты по 10 секунд, истинное значение ЧСС определялось на основе соответствующего сегмента контактной фотоплетизмограммы в датасете. Для подсчета ЧСС применялся спектральный анализ, а в качестве метрики использовалась средняя абсолютная ошибка.
Для выбора области интереса применялось несколько ранее описанных вариантов:
1) использование алгоритма Виолы и Джонса для получения области, содержащей лицо, и ее последующая обрезка для устранения краев, содержащих фон, а также закрытие области глаз для устранения влияния бликов;
2) использование Mediapipe Face Mesh для выбора всего лица за исключением глаз и рта;
3) использование Mediapipe Face Mesh для выбора области щек и лба;
4) использование алгоритма Виолы и Джонса для получения области, содержащей лицо, и применение адаптивной оценки цвета кожи с помощью гистограмм.
Третий вариант оказался наиболее эффективным. Сочетание третьего и четвертого вариантов, хотя и способствовало лучшей сегментации кадров, позволяя оставить только пиксели кожи, привело к незначительному ухудшению результатов.
Далее было проведено сравнение эффективности фильтра для устранения тренда, фильтра Баттерворта, фильтра Чебышева 2 типа и скользящего среднего фильтра [9] по отдельности, а также в комбинациях. Так как фильтры Баттерворта и Чебышева имеют схожую функцию, то их совместное применение не оценивалось. Таким образом было получено 12 возможных комбинаций фильтров, которые применялись совместно с алгоритмами GREEN, CHROM, POS, PBV, LGI и OMIT.
Использование оптимальной комбинации фильтров способно существенным образом улучшить эффективность дистанционной фотоплетизмографии. Лучшие результаты для каждого из алгоритмов, а также результаты без использования каких‑либо фильтров приведены в табл. 2. Отметим, что в датасете MMPD результаты значительно хуже из‑за сильного сжатия видео, что ведет к потере информации, затрудняя таким образом процесс извлечения пульсового сигнала.
Почти во всех случаях оптимальной комбинацией оказалось применение фильтра для устранения тренда и фильтра Чебышева 2 типа. Хотя данные фильтры давно известны, и фильтр Чебышева в сравнении с рядом других фильтров был показан как оптимальный [9], настоящий анализ показал, что они представляют собой оптимальную комбинацию.
Наиболее эффективным оказался метод POS, поэтому, чтобы детальнее показать влияние отдельных фильтров и их комбинаций приведем все результаты для данного метода в табл. 3. При этом ключевую роль играют частотные фильтры — их отсутствие (строки №9-12) сопровождается наихудшими результатами. Подтверждая данные литературы, отметим, что фильтр Чебышева 2-го (строки №1-4) типа эффективнее, чем более часто используемый фильтр Баттерворта (строки №5-8). Добавление фильтра для устранения тренда почти всегда ведет к улучшению результатов, тогда как скользящий средний фильтр в одних случаях показывает положительный, а в других случаях отрицательный эффект (например, при сравнении строк №1 и №3, №9 и №10, №11 и №12).
Для иллюстрации эффективности предложенной комбинации фильтров мы также приведем результаты из библиотеки rPPG‑Toolbox для дистанционной фотоплетизмографии [42]. В табл. 4 показано, что предложенная комбинация фильтров позволяет существенным образом улучшить результаты для всех алгоритмов дистанционной фотоплетизмографии.
Помимо алгоритмов дистанционной фотоплетизмографии, основанных на классических методах обработки сигналов, существуют также решения на основе глубокого обучения. Применение нейронных сетей для анализа видео позволяет добиться значительно более высокой точности. Однако серьезной проблемой является нестабильность получаемых результатов — модель, обученная на одном датасете может показывать существенно худшие метрики при тестировании на других наборах данных (сравнение результатов приведено в библиотеке rPPG‑Toolbox [42]). Ключевая причина — это, вероятно, небольшой размер датасетов для дистанционной фотоплетизмографии, что способствует сильному переобучению. Хотя в дальнейшем модели глубокого обучения могут оказаться более перспективными, в настоящий момент классические методы обработки сигналов благодаря своей устойчивости представляются более предпочтительными.
В заключение, отметим, что дистанционная фотоплетизмография — это активно развивающееся направление, которое имеет большие перспективы для использования в телемедицине, бесконтактном мониторинге жизненно важных показателей и в качестве скринингового метода диагностики благодаря простоте и удобству применения в сочетании с высокой точностью. Предложенная в настоящей работе комбинация фильтров, отличаясь простотой, может существенным образом улучшить работу алгоритмов извлечения пульсового сигнала и, таким образом, рекомендована для широкого применения с целью повышения эффективности методик дистанционной фотоплетизмографии.
1. Ontiveros, Rodrigo Castellano, et al. “Evaluating RGB Channels in Remote Photoplethysmography: A Comparative Study with Contact-Based PPG.” Frontiers in Physiology, vol. 14, 22 Dec. 2023, https://doi.org/10.3389/fphys.2023.1296277
2. Волков Иван Юрьевич, Сагайдачный Андрей Александрович, Фомин Андрей Владимирович ФОТОПЛЕТИЗМОГРАФИЧЕСКАЯ ВИЗУАЛИЗАЦИЯ ГЕМОДИНАМИКИ И ДВУХМЕРНАЯ ОКСИМЕТРИЯ // Изв. Сарат. ун-та Нов. сер. Сер. Физика. 2022. №1. URL: https://cyberleninka.ru/article/n/fotopletizmograficheskaya-vizualizatsiya-gemodinamiki-i-dvuhmernaya-oksimetriya.
3. Verkruysse, W., Svaasand, L. O., & Nelson, J. S. (2008). Remote plethysmographic imaging using ambient light. Optics express, 16(26), 21434–21445. https://doi.org/10.1364/oe.16.021434
4. M. Hulsbusch, “An image-based functional method for opto-electronic ¨ detection of skin perfusion,” Ph.D. dissertation (in German), Dept. Elect. Eng., RWTH Aachen Univ., Aachen, Germany, 2008.
5. Wang, Wenjin, et al. “Algorithmic Principles of Remote PPG.” IEEE Transactions on Biomedical Engineering, vol. 64, no. 7, July 2017, pp. 1479–1491, https://doi.org/10.1109/tbme.2016.2609282.
6. Haugg, Fridolin, et al. “GRGB RPPG: An Efficient Low-Complexity Remote Photoplethysmography-Based Algorithm for Heart Rate Estimation.” Bioengineering, vol. 10, no. 2, 12 Feb. 2023, p. 243, https://doi.org/10.3390/bioengineering10020243.
7. Ru Jing Lee, et al. “Review on Remote Heart Rate Measurements Using Photoplethysmography.” Multimedia Tools and Applications, 19 Oct. 2023, https://doi.org/10.1007/s11042-023-16794-9.
8. Liu, Yiming, et al. A Modified POS-Based RPPG with Real-Time Deep Facial ROI Tracker and Pose Constrained Kalman Filter. 2 Feb. 2021, pp. 169–179, https://doi.org/10.1145/3456529.3456558.
9. Guler, Saygun, et al. “Optimal Digital Filter Selection for Remote Photoplethysmography (RPPG) Signal Conditioning.” Biomedical Physics & Engineering Express, vol. 9, no. 2, 11 Jan. 2023, pp. 027001–027001, https://doi.org/10.1088/2057-1976/acaf8a.
10. Tarvainen, M.P., et al. “An Advanced Detrending Method with Application to HRV Analysis.” IEEE Transactions on Biomedical Engineering, vol. 49, no. 2, 2002, pp. 172–175, https://doi.org/10.1109/10.979357.
11. de Haan, G, and A van Leest. “Improved Motion Robustness of Remote-PPG by Using the Blood Volume Pulse Signature.” Physiological Measurement, vol. 35, no. 9, 27 Aug. 2014, pp. 1913–1926, https://doi.org/10.1088/0967-3334/35/9/1913.
12. de Haan, Gerard, and Vincent Jeanne. “Robust Pulse Rate from Chrominance-Based RPPG.” IEEE Transactions on Biomedical Engineering, vol. 60, no. 10, 1 Oct. 2013, pp. 2878–2886, ieeexplore.ieee.org/abstract/document/6523142, https://doi.org/10.1109/TBME.2013.2266196.
13. M. Lewandowska, J. Rumiński, T. Kocejko and J. Nowak, "Measuring pulse rate with a webcam — A non-contact method for evaluating cardiac activity," 2011 Federated Conference on Computer Science and Information Systems (FedCSIS), Szczecin, Poland, 2011, pp. 405-410.
14. Poh, Ming-Zher, et al. “Non-Contact, Automated Cardiac Pulse Measurements Using Video Imaging and Blind Source Separation.” Optics Express, vol. 18, no. 10, 7 May 2010, p. 10762, https://doi.org/10.1364/oe.18.010762.
15. Yuriy Mironenko, et al. “Remote Photoplethysmography: Rarely Considered Factors.” ArXiv (Cornell University), 1 June 2020, https://doi.org/10.1109/cvprw50498.2020.00156.
16. Wang, W., den Brinker, A. C., Stuijk, S., & de Haan, G. (2017). Amplitude-selective filtering for remote-PPG. Biomedical optics express, 8(3), 1965–1980. https://doi.org/10.1364/BOE.8.001965
17. Wang, Wenjin, et al. Color-Distortion Filtering for Remote Photoplethysmography. 1 May 2017, https://doi.org/10.1109/fg.2017.18.
18. D. Botina-Monsalve, et al. “Long Short-Term Memory Deep-Filter in Remote Photoplethysmography.” 2022 IEEE/CVF Conference on Computer Vision and Pattern Recognition Workshops (CVPRW), 1 June 2020, pp. 1242–1249, https://doi.org/10.1109/cvprw50498.2020.00161.
19. Lee, Jukyung, et al. “Improved Remote Photoplethysmography Using Machine Learning-Based Filter Bank.” Applied Sciences, vol. 14, no. 23, 28 Nov. 2024, p. 11107, https://doi.org/10.3390/app142311107.
20. Kim, Dae-Yeol, et al. “Assessment of ROI Selection for Facial Video-Based RPPG.” Sensors, vol. 21, no. 23, 27 Nov. 2021, p. 7923, https://doi.org/10.3390/s21237923.
21. Casado, Constantino Álvarez, and Miguel Bordallo López. “Face2PPG: An Unsupervised Pipeline for Blood Volume Pulse Extraction from Faces.” ArXiv (Cornell University), 1 Jan. 2022, https://doi.org/10.48550/arxiv.2202.04101.
22. Boccignone, Giuseppe, et al. “Enhancing RPPG Pulse-Signal Recovery by Facial Sampling and PSD Clustering.” Biomedical Signal Processing and Control, vol. 101, Mar. 2025, p. 107158, https://doi.org/10.1016/j.bspc.2024.107158.
23. Tsouri, G. R., & Li, Z. (2015). On the benefits of alternative color spaces for noncontact heart rate measurements using standard red-green-blue cameras. Journal of biomedical optics, 20(4), 048002. https://doi.org/10.1117/1.JBO.20.4.048002
24. Ryu, J., Hong, S., Liang, S., Pak, S., Chen, Q., & Yan, S. (2021). Research on the combination of color channels in heart rate measurement based on photoplethysmography imaging. Journal of biomedical optics, 26(2), 025003. https://doi.org/10.1117/1.JBO.26.2.025003
25. Ryu, J., Hong, S., Liang, S., Pak, S., Chen, Q., & Yan, S. (2021). A measurement of illumination variation-resistant noncontact heart rate based on the combination of singular spectrum analysis and sub-band method. Computer methods and programs in biomedicine, 200, 105824. https://doi.org/10.1016/j.cmpb.2020.105824
26. Sheng, Yi, et al. “An Improved Approach to the Performance of Remote Photoplethysmography.” Computers, Materials & Continua, vol. 73, no. 2, 2022, pp. 2773–2783, https://doi.org/10.32604/cmc.2022.027985. Accessed 21 June 2022.
27. Yang, Y., Liu, C., Yu, H., Shao, D., Tsow, F., & Tao, N. (2016). Motion robust remote photoplethysmography in CIELab color space. Journal of biomedical optics, 21(11), 117001. https://doi.org/10.1117/1.JBO.21.11.117001.
28. Zhang, Yuzhong, et al. “Illumination Variation-Resistant Video-Based Heart Rate Monitoring Using LAB Color Space.” Optics and Lasers in Engineering, vol. 136, Jan. 2021, p. 106328, https://doi.org/10.1016/j.optlaseng.2020.106328.
29. Zhang, Chi, et al. “Comparative Study on the Effect of Color Spaces and Color Formats on Heart Rate Measurement Using the Imaging Photoplethysmography (IPPG) Method.” Technology and Health Care, vol. 30, 25 Feb. 2022, pp. 391–402, https://doi.org/10.3233/thc-thc228036.
30. Haugg, Fridolin, et al. “Effectiveness of Remote PPG Construction Methods: A Preliminary Analysis.” Bioengineering, vol. 9, no. 10, 20 Sept. 2022, p. 485, https://doi.org/10.3390/bioengineering9100485.
31. Giuseppe Boccignone, Donatello Conte, Vittorio Cuculo, Alessandro D’Amelio, Giuliano Grossi, Raffaella Lanzarotti, and Edoardo Mortara. pyvhr: a python framework for remote photoplethysmography. PeerJ Computer Science, 8:e929, 2022.
32. Yu, Changqian, et al. BiSeNet: Bilateral Segmentation Network for Real-Time Semantic Segmentation. 8 Sept. 2018, pp. 334–349, https://doi.org/10.1007/978-3-030-01261-8_20.
33. Xie, Enze, et al. “SegFormer: Simple and Efficient Design for Semantic Segmentation with Transformers.” ArXiv (Cornell University), 6 Dec. 2021, https://doi.org/10.48550/arxiv.2105.15203.
34. Lee, H., Ko, H., Chung, H. et al. Real-time realizable mobile imaging photoplethysmography. Sci Rep 12, 7141 (2022). https://doi.org/10.1038/s41598-022-11265-x
35. Kumar, M., Veeraraghavan, A., & Sabharwal, A. (2015). DistancePPG: Robust non-contact vital signs monitoring using a camera. Biomedical optics express, 6(5), 1565–1588. https://doi.org/10.1364/BOE.6.001565
36. Po, LM., Feng, L., Li, Y. et al. Block-based adaptive ROI for remote photoplethysmography. Multimed Tools Appl 77, 6503–6529 (2018). https://doi.org/10.1007/s11042-017-4563-7
37. Bobbia, Serge, et al. “Unsupervised Skin Tissue Segmentation for Remote Photoplethysmography.” Pattern Recognition Letters, vol. 124, June 2019, pp. 82–90, https://doi.org/10.1016/j.patrec.2017.10.017.
38. Serge Bobbia, et al. “Real-Time Temporal Superpixels for Unsupervised Remote Photoplethysmography.” 2022 IEEE/CVF Conference on Computer Vision and Pattern Recognition Workshops (CVPRW), 1 June 2018, pp. 1422–14227, https://doi.org/10.1109/cvprw.2018.00182.
39. Almarshad, M. A., Islam, M. S., Al-Ahmadi, S., & BaHammam, A. S. (2022). Diagnostic Features and Potential Applications of PPG Signal in Healthcare: A Systematic Review. Healthcare (Basel, Switzerland), 10(3), 547. https://doi.org/10.3390/healthcare10030547
40. Park, J., Seok, H. S., Kim, S. S., & Shin, H. (2022). Photoplethysmogram Analysis and Applications: An Integrative Review. Frontiers in physiology, 12, 808451. https://doi.org/10.3389/fphys.2021.808451
41. Гаранин А.А., Рогова В.С., Иванчина П.С., Толкачева Е.О. Веб-фотоплетизмография: возможности и перспективы. Регионарное кровообращение и микроциркуляция. 2023;22(4):11-16. https://doi.org/10.24884/1682-6655-2023-22-4-11-16
42. Xin Liu, Girish Narayanswamy, Akshay Paruchuri, Xiaoyu Zhang, Jiankai Tang, Yuzhe Zhang, Roni Sengupta, Shwetak Patel, Yuntao Wang, and Daniel McDuff. 2023. RPPG-toolbox: deep remote PPG toolbox. In Proceedings of the 37th International Conference on Neural Information Processing Systems (NIPS '23). Curran Associates Inc., Red Hook, NY, USA, Article 2995, 68485–68510.
43. Jiankai Tang, Kequan Chen, Yuntao Wang, Yuanchun Shi, Shwetak Patel, Daniel McDuff, and Xin Liu. Mmpd: Multi-domain mobile video physiology dataset, 2023.
44. MCD-rPPG: на одной волне с телемедициной. https://habr.com/ru/articles/821015/
45. MediaPipe Face Mesh. https://github.com/google-ai-edge/mediapipe/wiki/MediaPipe-Face-Mesh