Звучит как очередной заголовок из серии «будущее уже наступило»: берём обычный Wi-Fi, несколько дешёвых ESP32 и внезапно видим на экране человека, который находится за стеной. Без камеры, без датчиков на человеке и даже без какого-нибудь браслета.
Я наткнулся на проект RuView на GitHub. Раньше он назывался WiFi-DensePose. На GitHub у проекта уже около 90 тысяч звёзд, а роликов со светящимися скелетами в интернете столько, что первая мысль была примерно такой: либо это какая-то магия, либо нас опять очень красиво обманывают.
В итоге полез смотреть, что там внутри. Репозиторий, документацию, модели, issues. Особенно issues, потому что там обычно довольно быстро заканчивается маркетинг и начинается реальная жизнь. Если коротко: проект настоящий. Но ESP32 за девять долларов пока не превращает квартиру в рентген-кабинет.
Как Wi-Fi вообще может увидеть человека
Слово «увидеть» тут не совсем правильное. Роутер постоянно гоняет по помещению радиосигнал. Волны отражаются от стен, мебели, техники, людей. Человек прошёл по комнате, повернулся, сел или даже просто дышит, и картина распространения сигнала немного изменилась.
Некоторое Wi-Fi-железо позволяет получить CSI (Channel State Information). Это уже не обычный RSSI с условными «минус 60 дБм», а гораздо более подробная информация о состоянии радиоканала: амплитуды, фазы, поднесущие и изменение всего этого во времени. Картинки при этом, естественно, никакой нет.

Официальный скриншот интерфейса Live WiFi Sensing: подключение ESP32, RSSI, характеристики сигнала и классификация активности. Источник: репозиторий RuView.
Если совсем по-простому, Wi-Fi человека не видит. Он замечает, как человек меняет радиоэхо помещения. По таким изменениям можно понять, что кто-то вошёл в комнату, вышел из неё или начал двигаться. Даже дыхание создаёт небольшие периодические изменения сигнала.
Со скелетом всё намного веселее. Понять, где у человека рука, где нога, куда он повернул голову и в какой позе вообще стоит, намного сложнее. Тут уже нужны обученные модели. Причём результат зависит и от помещения, и от расположения передатчиков, и от количества узлов, и от того, на каких данных модель обучалась. В общем, обнаружить человека и восстановить его позу — задачи всё-таки очень разные.
Что нужно из железа
С обычным ноутбуком и первым попавшимся домашним роутером далеко не уехать. Чаще всего наружу они отдают только RSSI, то есть довольно грубую оценку мощности сигнала. Для простого детектора движения этого ещё может хватить. Для восстановления позы — уже нет.
В документации RuView для получения CSI предлагаются ESP32-S3 и ESP32-C6. Отдельная плата стоит примерно 6–10 долларов. Правда, тут довольно быстро портится красивый заголовок про «человека за стеной за $9». Разработчики рекомендуют использовать несколько узлов. Например, комплект из трёх-шести ESP32-S3 в документации оценивается примерно в 54 доллара. Всё равно недорого. Но это уже не совсем история про одну плату, которую воткнул в USB и пошёл смотреть сквозь стены.

Официальный скриншот Human Pose Detection. Справа сам интерфейс поясняет границу возможностей: одна ESP32 — присутствие, дыхание и грубое движение; две-три — локализация тела и направление движения; четыре и более плюс обученная модель — отслеживание конечностей и полная поза. Источник: репозиторий RuView.
Есть ещё один момент, на котором я сначала сам чуть не споткнулся. Самый простой запуск RuView через Docker работает на симулированных данных. То есть ESP32 можно вообще не покупать. Запускаем проект и получаем красивый интерфейс со скелетом. Только Wi-Fi в этот момент никого не видит. Это демонстрация программы на сгенерированных данных.

Официальная визуализация RuView Observatory. В правом верхнем углу видна метка DEMO: этот экран показывает возможности интерфейса, но сам по себе не доказывает работу распознавания на реальных CSI-данных. Источник: репозиторий RuView.
Где начинается самое интересное
Разработчикам тут надо отдать должное. Если залезть в документацию чуть глубже README, состояние разных частей проекта описано довольно подробно. Захват CSI и обработка сигнала реализованы. Детектирование присутствия и движения тоже. Для ESP32 есть прошивка, модели выложены, репозиторий активно обновляется, лицензия MIT. То есть перед нами точно не README с тремя красивыми GIF-ками и обещанием когда-нибудь написать код.
А вот с восстановлением позы пока сложнее. Речь про тот самый режим с 17 точками тела, который и выглядит на видео наиболее эффектно. Для встроенной модели сейчас указано около 3% PCK@20. До надёжного определения реального положения рук, ног и головы тут, мягко говоря, ещё далеко. Причём есть деталь ещё интереснее: текущий путь выполнения модели всё ещё может возвращать центрированный скелет-заглушку с confidence=0. Получается немного забавно. Скелет на экране есть, а человека этот конкретный скелет может вообще не описывать.
При этом в README встречается куда более приятная цифра: 82,69% PCK@20. Вот на ней очень легко сделать неправильный вывод. Эти 82,69% относятся к отдельному тестированию на подготовленном датасете MM-Fi. Это совсем не тот сценарий, когда мы приносим домой одну ESP32, ставим её возле роутера и получаем такую же точность на человеке за стеной.
Мне кажется, большая часть хайпа вокруг проекта появляется именно здесь. CSI реально существует. По нему реально можно ловить изменения в помещении. Есть нейросети, которые пытаются из этих изменений восстановить позу. Есть научные работы с хорошими результатами в контролируемых условиях. Ну и есть очень эффектная визуализация со скелетом. Когда всё это видишь в одном ролике, вывод «ESP32 видит людей через стены» возникает почти автоматически. Но пока между этими вещами есть довольно большой зазор.
Часть демонстраций RuView работает на симуляции. Есть и вариант, где эталонную позу получает веб-камера, а Wi-Fi используется как дополнительный источник данных. Если смотреть короткий ролик без пояснений, понять, что именно сейчас перед тобой, практически невозможно.
А кто-нибудь пробовал собрать это дома?
Вот тут я полез в issues и завис там надолго. Один пользователь пытался получить нормальную позу с четырьмя ESP32-S3, но ожидаемого результата не получил. Другой подключил уже шесть узлов: пакеты приходили, система их видела, но скелет на экране двигаться почему-то не захотел. Понятно, что два неудачных запуска сами по себе ничего не доказывают. Может быть проблема в настройке, помещении, расположении узлов, версии софта — вариантов хватает. Но для меня это хороший показатель того, на какой стадии сейчас находится проект.
Это пока исследовательская штука, с которой надо разбираться. Не устройство из категории «заказал платы, вечером собрал, жена ушла в соседнюю комнату, а ты смотришь на её скелет через стену». Хотя именно такое впечатление после некоторых роликов вполне можно получить.
Так это фейк или всё-таки работает?
Фейком я бы RuView точно не называл. Физика здесь реальная. Изменения Wi-Fi-сигнала действительно позволяют обнаруживать присутствие человека, движение и даже дыхание.
Восстановление позы тоже не придумали авторы RuView вчера вечером. Например, в работе DensePose From WiFi исследователи показывали восстановление положения человеческого тела по Wi-Fi-сигналам в контролируемых условиях.
И сам RuView не пустышка. Внутри нормальный живой проект: код, прошивки для ESP32, обработка CSI, модели, документация. Причём лично мне даже детектор присутствия кажется интересной штукой, если забыть на минуту про скелеты.
Представьте умный дом, который понимает, что в комнате кто-то есть, но при этом ему не нужна камера. Автоматический свет, охрана, определение движения. Можно экспериментировать с дыханием. В общем, применений хватает и без попытки нарисовать человеку локти.
Проблема скорее в формулировке. «По Wi-Fi можно определить присутствие и движение человека» — уже вполне реальная технология. «ESP32 за $9 строит точный скелет человека через стену» — пока нет. Разница между ними огромная, хотя для хорошего вирусного ролика она занимает примерно ноль секунд экранного времени.
Что бы я попробовал собрать сам
Если буду повторять RuView дома, со скелета точно не начну. Я бы взял две-три ESP32-S3 и сначала попробовал решить максимально скучную задачу: определить, есть человек в соседней комнате или нет. Без рук, ног и красивых человечков на экране. Просто есть человек — нет человека. Если это заработает стабильно, уже интересно.
Потом можно посмотреть сырые CSI, подвигать платы по комнате, поиграться с калибровкой. После этого попробовать движение, потом дыхание. А вот если всё перечисленное действительно удастся нормально повторить, тогда уже можно лезть в восстановление позы и смотреть, что получится там. Мне такой подход нравится больше, потому что сразу становится понятно, где реально работает радиочасть, где работает обработка сигнала, а где мы уже смотрим на результат экспериментальной модели.
Наверное, поэтому сам RuView меня в итоге и зацепил. Не скелетом за стеной. С ним как раз пока вопросов больше всего. Меня больше удивило другое: сколько информации вообще можно вытащить из обычного Wi-Fi-сигнала. Из того самого сигнала, который круглосуточно болтается вокруг нас и про который обычно вспоминаешь только тогда, когда интернет начинает тормозить.
Если очередной проект обещает какую-то совсем уж красивую магию, мне обычно интереснее открыть репозиторий и посмотреть, что там реально работает. Иногда после этого магии становится меньше. Зато сам проект оказывается намного интереснее.
Комментарии (26)

not-allowed-here
26.08.2026 13:49а вот практическая задача - есть кровать условно разделенная пополам - дыхание и пульс от каждого спящего - реально? 3 человека(мама-папа-ребенок) одной кровати реально?

not-allowed-here
26.08.2026 13:49отвечу сам себе есть такая штука как Pulse-Fi с точностью до 1,5 BPM

UnityWithoutHope Автор
26.08.2026 13:49Для одного человека дыхание и пульс выглядят намного реалистичнее, чем восстановление позы. Но трое в одной кровати — уже гораздо сложнее: нужно не просто поймать колебания, а разделить три сигнала и понять, кому какой принадлежит. Pulse‑Fi выглядит интересно, но заявленные 1,5 BPM я бы не переносил автоматически на такой сценарий без отдельного эксперимента.

not-allowed-here
26.08.2026 13:49я предполагал две-три фокусных зоны и подумать над антеннами направленными - да и точность нужна условная и +/-10BPM особой роли тут сыграют

litalen
26.08.2026 13:49Пассивные радары могут много чего интересного, да. Вот например, здесь на хабре:
https://habr.com/ru/articles/966044/
https://github.com/Stanislav-sipiko/passive-sdr-radar
Или вот китайцы (не опенсорс к сожалению): https://3dnews.ru/1111104/kitayskie-uchyonie-obnarugivayut-samolyotinevidimki-po-pomeham-svyazi-seti-starlink

UnityWithoutHope Автор
26.08.2026 13:49Спасибо, вот это уже полезное дополнение. Пассивный SDR-радар — по-моему, вообще самая честная рамка для всей темы: не «Wi‑Fi снимает картинку», а отражения и возмущения радиосигнала позволяют извлекать информацию об объектах. Репозиторий забрал, поковыряю отдельно.

Kogolbok
26.08.2026 13:49Хм. А в виде наблюдения за пожилым человеком такая штука существует? Думаю многие бы хотели родителям такое.

entze
26.08.2026 13:49Тут не то чтобы именно "пожилой", тут про сценарии и реакцию на события.
например - человек не двигается в необычном месте (упал), долго не встает с кровати (не меняется положение), кто-то пришел (новые объекты). События легкие, можно отправлять например по meshcore.
Можно обвешать все камерами, но затраты даже не на камеры, а на обработку будут значительные и возрастает сложность.

NutsUnderline
26.08.2026 13:49так полно всяких новых недорогих платок с частотами 60ГГц где "человек упал" идет первым функционалом.
а вообще еше смартчасы имеют детектор падений
как раз на подобные случаи

WandererX
26.08.2026 13:49Месяца два или три назад попробовал собрать это на четырёх ESP32, благо в запасе новые лежали. В итоге ноды друг друга видели, пакеты с данными прилетали, но GUI даже меня не увидел. Несколько часов издевательств над собой и устройствами к улучшению результата не привели.

UnityWithoutHope Автор
26.08.2026 13:49Вот это как раз самый полезный тип обратной связи — реальная сборка, а не демонстрация. Четыре платы видят друг друга, пакеты идут, а GUI не обнаруживает человека — очень похоже на случаи из issues. Если помните версию RuView, прошивку и расположение плат, напишите, пожалуйста. Интересно понять, где ломалась цепочка: на калибровке, обработке CSI или уже на модели.

positroid
26.08.2026 13:49Вы зачем комментарии через ИИ генерируете то? Бросайте это дело

UnityWithoutHope Автор
26.08.2026 13:49Да, часть черновиков делаю через ИИ, потом сам проверяю и правлю. Но здесь получилось слишком гладко — согласен, это слышно. Буду писать короче и больше от себя.

VO_Obsidian
26.08.2026 13:49Так главное не указано. Там же оно может в presence detection, частоту дыхания и сердцебиения. Вот эти фичи то работают? Или с ними также всё?

xSVPx
26.08.2026 13:49Насколько я понимаю 60ггц радары специальные всё это могут, но совершенно неидеально. На вайфай яб не надеялся...

UnityWithoutHope Автор
26.08.2026 13:49Детекция присутствия и движения выглядит самой зрелой частью: захват CSI и обработка в проекте действительно реализованы. Дыхание тоже физически измеримо, но сильно зависит от установки и калибровки. А вот стабильного домашнего кейса RuView, где обычный Wi‑Fi надёжно показывает и дыхание, и пульс, я пока не нашёл. Это не заглушка уровня центрированного скелета, но и не готовый бытовой датчик. Специализированные 60 ГГц радары, о которых написали ниже, — уже другое и более подходящее железо.

RS6
26.08.2026 13:49Не совсем понятно, зачем упираться в позы и "рентген". Достаточно надёжная детекция присутствия живого человека в помещении была бы уже очень интересной фичёй.

darwin_usb
26.08.2026 13:49Если кому нужно видеть, что твориться в комнате, то есть такая штука как esp32 cam. С камерой я как то их по 5$ покупал. Строить вай фай данные наверное все таки можно в теории, но там такая ай модель нужна будет, что не на каждой видео карте запуститься.
Несколько лет хотел строить радар из ультразвуковых дальномеров , вот тут думаю копать нужно

NutsUnderline
26.08.2026 13:49эта рекомендация находиться на грани законности - в зависимости от ситуации;) как впрочем и все что тут подразумевается с wifi - "видеть сквозь стены".

UnityWithoutHope Автор
26.08.2026 13:49Да, именно поэтому я бы жёстко разделял бытовой датчик в своей квартире и наблюдение через чужую стену. Технология может быть одной и той же, а юридически и этически это совершенно разные сценарии. В статье речь только о своих устройствах и собственном помещении; к слежке за соседями это точно не приглашение.

UnityWithoutHope Автор
26.08.2026 13:49Тогда задача выглядит заметно реалистичнее, чем попытка вслепую разделить сигналы трёх человек. Если заранее разбить кровать на две-три зоны и использовать направленные антенны, а точность ±10 BPM устраивает, это уже может работать как грубый датчик состояния. Но готового воспроизводимого опыта именно с тремя людьми я пока не нашёл.
NutsUnderline
год назад где то уже был хайп и обсуждение на эту тему, а тут че то снова поднялось. причем желтизна зашкаливает, рисуют картинки a la "тепловизор" в фильме robocop
positroid
Имхо это может работать в теории, но только с большим количеством датчиков, в лабораторных условиях, где все стены, поверхности и положения антенн внесли в модель.
А все вот эти заголовки "ваши соседи могут за вами следить через роутер" ничего кроме пустого хайпа за собой не несут
Bender_Rodrigez
Реальная причина хайпа вокруг технологии из
бумажных стаканов и ниткиподручных материалов, позволяющей видеть через стены:itoolsy
Мало того, это минимум 2-я статья на эту тему за 3 дня...
UnityWithoutHope Автор
Да, желтизны вокруг темы навалили прилично, а картинки под тепловизор только сильнее всё путают. Я поэтому и полез не в ролики, а в код, документацию и issues. Присутствие и движение по CSI ловить реально, а домашний «скелет сквозь стену» пока совсем не тот уровень, который обещают заголовки.