Как работают датчики пульса в носимых устройствах


Спорт
Кровоснабжение при физических нагрузках используется, прежде всего, для доставки кислорода в мышцы c целью эффективного расщепления производных глюкозы. Насос для кровоснабжения — сердце. У сердца, глобально, два параметра: ударный объем (сколько крови выдает за раз) и частота сердечных сокращений (ЧСС, сколько ударов в минуту оно делает). Чем уровень физической подготовки выше — тем сердцу меньше ударов в единицу времени требуется.
Для тренировок важно знать пульсовые зоны, показывающие эффективность использования кислорода, доставляемого по кровеносной системе к работающим мышцам. Именно при использовании пульсовых зон тренировка становится эффективной и приобретает системный характер. Здесь крайне важно немедленно получать сигнал от часов при выходе из заданных границ пульсовой зоны.
Можно оценивать тренировки постфактум, например, накладывая пульс на географические карты, и смотря его зависимость от рельефа, времени и т. д. Кроме того, появляется возможность сравнивать свой пульс с другими участниками. Чем ниже пульс при одинаковой нагрузке — тем тренированность выше.
Здоровье
Можно оценивать ЧСС для оценки состояний организма. Как правило, более высокий пульс у человека в состоянии стресса (организм готовится к непредвиденным нагрузкам и заранее увеличивает питание тканей). ЧСС может повышаться при болезнях (интенсификация вывода продуктов распада и определенная активизация работы внутренних органов), в состоянии алкогольного и после алкогольного опьянения. В состоянии пониженного энергообмена пульс наоборот падает.
Важно знать пульс для оценки стресса и для оценки фаз сна. Здесь, помимо средней ЧСС, следует учитывать такой параметр как вариабельность сердечного ритма. Для этого нужно уметь определять каждое отдельное сокращение. Это нам дает, в частности, возможность определение таких патологических состояний организма как аритмии.
Как работает?
Есть датчики, которые отслеживают кровенаполнение сосудов расположенных в руке. Классика — это датчик на пальце. Сигнал, получающийся в результате таковых измерений, называется фотоплетизмограммой или Photoplethysmogram (PPG). То, как свет проникает сквозь палец, можно увидеть, если, например, приложить его на обратную поверхность компьютерной мышки, на светодиод. Палец подсветится. Этот свет имеет малые пульсации, связанные с сердечным ритмом, которые, при определенной сноровке можно заметить даже невооруженным глазом. Датчики для регистрации изменений светового потока называются фотодиодами. Фотодиод это, по сути, однопиксельная камера с очень большим пикселем. Камера делает «фото» 25−100 раз в секунду. Если палец не подсвечивать, то сигнал получается очень слабым и шумным, для подсветки используется светодиод. Можно, кстати, сделать работающее устройство и без светодиода для этого достаточно поместить руку на солнечный свет. Если руку поместить под обычную лампу, то можно наблюдать аналогичный эффект, но с большими шумами, так как свет от бытовых источников модулируется напряжением сети. В России это частоты кратные 50 Гц, что пересекается с частотой съема информации с фотодиода.
Принцип снятия PPG (фотоплетизмограммы) с пальца: LED -светодиод, PD — фотодатчик.
Со временем возникла идея использовать пульсометр в часах. Получается, что датчик теперь нужно расположить на запястье. Проблема в том, что сигнал с запястья хуже, чем с пальца. С пальца мы берем свет, который пропускается через объект, а на запястье — свет который отражается (т.к. толщина запястья намного больше пальца и для просвета нужен очень мощный источник света). Кроме того, палец является «терминальной точкой» распространения пульсовой волны. Это значит, что пульсовая волна отражается от кончика пальца и потому именно на этом кончике хорошо видна. Для отражения лучше использовать свет зеленого цвета, поскольку именно он дает оптимальное соотношение глубины проникновения и отражения. Если использовать синий свет, то он не проникнет под кожу. Красный и инфракрасный (ИК), наоборот, слишком глубоко проникают под кожу и одновременно захватывает сосудистые русла, в которых пульсовые волны распространяются по‑разному. Как следствие, сигнал получается более шумным.
Распространение света под кожу
Отдельная история с людьми с черной кожей. Из-за большого поглощения приходится или увеличивать мощность подсветки (что повышает энергопотребление) или использовать «более красный» источник. В часах Huawei применяется инфракрасный (ИК) светодиод, в результате получается более шумный сигнал по отношению с зеленому сигналу, снятому с человека со светлой кожей.
Для измерения пульса по PPG можно выделять отдельные периоды и считать число пиков на сигнале. Однако, это не всегда возможно, т.к. условия измерения PPG с часов не самые лучшие. Во‑первых, сигнал отражает колебания в кровеносном сосуде весьма плохо, накладываются различные артефакты в виде дыхательных волн, отражения от неоднородностей и т. д. Особенно это сильно может проявляться при большом пульсе. Во‑вторых, и это главное, носка часов — процесс весьма активный и потому в сигнале сильно отражаются движения, которые человек совершает. Сигнал от движений тела, особенно руки, на которой надеты часы, намного больше полезного сигнала пульса. Кроме того, частоты движения и частоты сердечных сокращений, как правило, весьма близки. Это не позволяет применять методы простого частотного разделения. А раз так, то появляется необходимость в использовании «умного» алгоритма. В часах Huawei именно такой и используется.
Форма сигнала пульсовой волны PPG
Кроме собственно, оптического датчика PPG, в часах есть еще и механические датчики. Нам интересны, прежде всего, акселерометр и гироскоп. Акселерометр, или датчик линейных ускорений, измеряет в трех осях ускорения (перегрузки), которым подвергаются часы. Следует отметить, что в нормальном состоянии на земной поверхности на предметы действует сила тяжести. Эту силу «чуствует» акселерометр, она называется ускорение свободного падения или g=9.8 м/с2, известное нам со школы. Так, например, именно благодаря акселерометру наш смартфон чувствует, что его перевернули, и меняет ориентацию картинки на экране. Но ускорения возникают и при движении. В частности, при движении рук на часы может действовать ускорение в несколько раз превышающее g. Это значит, что кровь в сосудах тоже подвергается значительным перегрузкам, что прямо отражается на сигнале PPG. Кстати, по акселерометру «умные» гаджеты считают шаги. Вторым важным датчиком является датчик угловых скоростей или гироскоп. Гироскоп достаточно точно показывает, какие вращательные движения совершает объект. По вращательным движениям и акселерометру возможно определять относительное изменение положения часов в пространстве.
Мы можем записывать показания гироскопа и акселерометра одновременно и использовать их при анализе сигнала PPG. Однако, доступность этих датчиков неравнозначная. Так, для питания акселерометра нам нужно затратить минимум энергии батарейки, поскольку это пассивный датчик, который можно сравнить с пружиной и шариком на конце. Нам для измерения ускорения достаточно просто «считать» показания удлинения этой пружины. Гироскоп — датчик активный. Это значит, что для его работы требуется постоянно подпитка энергией, поскольку в нем содержатся движущиеся части (колеблющаяся пластина) и параметры колебания этой пластины жестко связаны с угловыми скоростями датчика. Это подобно гироскопу, известному из курса физики, где в основе прибора лежит быстро вращающийся диск. В часах диск не вращается, но принцип аналогичный — есть активное механическое тело внутри (колеблющаяся пластинка). Сказанное позволяет заключить, что гироскоп более «дорогое» в энергозатратном смысле устройство. Потому, для экономии батареи мы его не можем использовать постоянно, в отличие от акселерометра.
Из условий задачи возникают, как минимум, два режима работы алгоритма измерения ЧСС: 1) нам важен каждый сердечный удар и мы точно меряем время между соседними сердечными сокращениями; 2) нам нужен средний пульс в конкретный момент времени (на самом деле, в пределах малого отрезка порядка 5 секунд). Для первого случая происходит подсчет каждого удара сердца и это получается сделать только в спокойном состоянии (без движения, или во сне). Но даже здесь возможны проблемы, ибо сигнал может быть сильно искажен и отличается от идеального. Кроме того, например, в ночном режиме предпочтительнее использовать ИК подсветку, которая не видна человеческому глазу и не мешает во время сна так, как это происходит с зеленым светом. ИК сигнал более шумный, как следствие, приходится сигнал особым образом «готовить», прежде чем возникнет возможность считать отдельные биты. Применяется особое математическое преобразование, которое дает возможность не считать каждый пик, выделяя только одну особую точку, а использовать информацию, скрытую в каждом кардиопериоде целиком. Если в сигнале случается какая-то «аномалия», то благодаря датчику ускорений, находящемуся в часах, удается эту аномалию классифицировать как артефакт движения (например, человек ворочается во сне).
Подсчет каждого пика на сигнале PPG
Самый интересный и технически сложный — второй случай, когда приходится измерять пульс в условиях сильных механических помех. Как правило, в таких условиях задача измерения каждого бита не ставится. Нужно измерить «мгновенный» пульс, являющийся усреднением на малом промежутке времени.
Показания с трех осей акселерометра во время бега
Для этого уже рассматривается сигнал не только во временной, но и в частотной области. Простое математическое преобразование, которое широко используется в технике, носит название «преобразование Фурье». Результатом преобразования Фурье является спектр сигнала. Если применять преобразование «Фурье» к относительно небольшим временным «окнам», то можно увидеть эволюцию спектра во времени, которая называется спектрограмма. Спектрограмма хороша тем, что на ней становится различима «нить» пульса. На картинке в реальном смысле этого слова прямая линия, совпадающая с пульсом и похожая на нить. Однако, нить видна далеко не всегда, т.к. накладывается очень много паразитных нежелательных шумов. Самые большие шумы в этой картинке, как правило, шумы движения. Их интенсивность может многократно превосходить интенсивность пульса.
Спектрограммы PPG и акселерометра (ACC)
Задача умного оценивания пульса по спектрограмме состоит в том, чтобы интенсивность нити пульса была высокой, а интенсивность мешающих компонент движения наоборот низкой. Нашу спектрограмму нужно отфильтровать. Для фильтрации мы берем сигнал с акселерометра, находим на нем нити движения и применяем подавление соответствующих частот в сигнале PPG. Нужно применить несколько следящих за нитями частот движения фильтров. В результате получается спектрограмма гораздо более контрастная по отношению к нити пульса. Пульс перестает теряться среди множества гармоник движения.
Самое интересное здесь — это придумать алгоритм, который бы находил нити на спектрограмме и следил за их изменением. Если частота ушла вверх, то фильтр должен перестроиться на более высокочастотный лад, а если вниз, то на более низкочастотный. Для этого применяется специальная математика из теории следящих адаптивных систем. Как следствие, наилучшие результаты достигаются в условиях, когда движения периодичны и очень стабильны. К таковым можно, прежде всего, отнести активности на беговых дорожках. Наоборот, в условиях со слабой периодичностью движений (например, активные игры) не удается добиться таких высоких показателей как на дорожке.
Спектрограмма PPG с гармониками движения
Сама задача определения пульса по спектрограмме может решаться в двух режимах: 1) в режиме постобработки, когда нам известна вся картина изменения сигнала с датчиков в течение длительного времени (минуты или десятки минут). В этом режиме нам не нужно «угадывать» будущее. Если нить пульса на спектрограмме пропала, то можно восстановить ее методом соединения линий до исчезновения и после восстановления контрастности. 2) в режиме реального времени, то есть без возможности «заглянуть» в будущее. Все что нам доступно — информация на текущий момент. В рамках условия задачи мы можем давать небольшую задержку порядка 5−6 секунд. Это время необходимое для того, чтобы имело место понятие усреднения, поскольку пульс — это число ударов в единицу времени. В покое у человека пульс примерно 1 удар в минуту. Значит, для уверенности нам нужно взять насколько соседних ударов и усреднить. В сложных условиях мы не измеряем каждый бит в отдельности, мы измеряем среднюю частоту. По своей сути, спектрограмма есть математическое представление усреднения.
Допустим, мы научились следить за нитью пульса и отличать эту нить от нитей движения. Возникает ряд вопросов. Первый — если нить пульса пропала, то следует немедленно прекратить выдачу показаний? Ответ, конечно, нет. Второй — если помехи движения настолько сложны и нерегулярны, что нет возможности выделить нить пульса, не видно никаких нитей движения — только хаотичные всплески разной интенсивности на разных частотах. В этом случае прекращать выдачу? Ответ нет. А если нить пульса скрылась за нитью движения? Это значит, что ЧСС примерно совпала с частотой шага, например. Как следствие, мы вынуждены фильтровать полезный сигнал на спектрограмме PPG. Куда пойдет сигнал пульса после того, как частоты вновь разойдутся? Обычно нить движения более мощная и она уводит за собой следящую систему. Может в этом случае прекратить выдачу? Ответ снова нет! Резонный вопрос почему? А ответ таков. Если пропадание сигнала случается на относительно небольшом промежутке времени, то есть смысл попытаться предсказать ЧСС по поведению человека.
Как известно, в современных часах, есть функция распознавания активностей. Так, например, можно распознать бег, ходьбу, езду на велосипеде, плавание и т. д. Все эти активности характеризуются определенным ритмом и, как следствие, интенсивностью физических нагрузок. Чем выше нагрузка — тем выше ЧСС. Таким образом, мы приходим к одной из ключевых технологий часов Huawei — к технологии умного предсказания пульса. Для предсказания используются сложные модели поведения пульса в разных ситуациях. Очевидно, например, что при одинаковой интенсивности ходьбы и бега будут разные отклики ЧСС. Кроме того, при разной тренированности разные люди показывают разные результаты. Так, например, для велосипедной активности у нас алгоритм работает не так, как при ходьбе или беге, поскольку сложный сигнал движения очень легко маскируется под пульс, ибо руки приходится держать на руле и интенсивность крайне мала. Возникает множество случайных помех от неровностей на дороге. Плюс возможно изгибание кистей рук на руле, что приводит к движению часов на запястье. Типовых примеров достаточно много и со всеми приходится иметь дело и уметь их обрабатывать.
Если для самых простых случаев можно попробовать создать модель поведения ЧСС, то для сложных это становится практически невозможно. К счастью, сегодня мы живем в век развития искусственного интеллекта и компьютерные алгоритмы способны сами создавать сложные математические модели. Именно благодаря алгоритмам машинного обучения и нейросетям нам удается решать задачу оценки пульса с достаточной для любительских задач точностью. Так, например, можно априори менять параметры модели в зависимости от пола, возраста, массы тела, а также образа жизни человека. Ведь, например, информация о среднем числе шагов и их интенсивности содержится в телефоне, поскольку современные смартфоны практически повсеместно умеют это делать. Априорные знания о человеке могут сделать алгоритм распознавания чуточку точнее. Кроме того, можно примерно оценивать как сердечно-сосудистая система откликается на физические нагрузки и вносить изменения в алгоритм «на лету». Именно в этом состоит суть адаптивного алгоритма. Но здесь важно не преувеличивать важность модели и доверять ей только тогда, когда уверенность в достоверности ее результатов высокая. Сделать алгоритм, в котором оптимально сочетаются способности к предсказыванию и оценка реальной измерительной ситуации — достаточно непростая задача. Для ее решения приходится применять то, что называется искусственным интеллектом.
Применяется в частности рекуррентная нейронная сеть, то есть сеть с обратными связями. Сеть учится обобщать различные состояния, в которых находится пользователь часов и предсказывает пульс в зависимости от состояния «сырых» датчиков.
Умный алгоритм оценки ЧСС в часах Huawei
Как же обучается наша модель? Для обучения нейросети нужны обучающие данные (датасеты). Для сбора датасетов привлекаются разные группы людей, которые выполняют различные задания, имитирующие типовые сценарии поведения пользователя с надетыми часами. С датчиков собираются «сырые» данные. Кроме «сырых» данных нам потребуется запись нашего реального пульса. А как его получить? Возможность достаточно точно оценивать пульс имеется благодаря нагрудным бытовым пульсометрам, которые делают это по электрической активности сердца (ЭКГ). Наше сердце генерирует очень мощные электрические импульсы, что позволяет регистрировать их очень надежно. К сожалению, ношение нагрудного ремня не очень удобно. Именно поэтому датчик ЧСС встроенный в часы пользуется такой популярностью, ибо позволяет привычный предмет использовать с гораздо большей эффективностью. Здесь следует отметить, что точность определения пульса по оптическому датчику PPG всегда будет ниже, чем точность нагрудного датчика ЭКГ. В том числе потому, что именно нагрудный датчик служит эталоном для датчика PPG, а не наоборот. Естественно, если вы профессиональный спортсмен и тренируетесь для взятия пьедестала на Олимпийских играх, то нужно пользоваться максимально точными инструментами. Если ваши запросы несколько скромнее то, для большинства практических бытовых задач оптического метода, используемого в умных часах Huawei, вполне достаточно.
Обсудить 0
