Системы контроля состояния водителя (Driver Monitoring System, DMS) перестали быть «опцией для премиум-сегмента» и превратились в реальный инструмент снижения аварийности. Производители переходят с простых эвристик (мигание/кивки) к глубоким моделям с временным вниманием, а автопарки всё чаще требуют детекцию не только сонливости, но и утомления/выгорания, «микросна», когнитивной перегрузки, отвлечённости на смартфон.
Эта статья — технический тест-обзор поколений алгоритмов: от классических PERCLOS до мультимодальных трансформеров с фьюжном видео+телеметрии. Мы разберёмся, что реально даёт прирост качества, сколько это стоит в вычислениях, как вести испытания и какие настройки снижают ложные срабатывания.
- Краткий глоссарий
- Архитектуры и эволюция
- Поколение 1: эвристики и PERCLOS
- Поколение 2: «лицо-глаза-позы» на CNN
- Поколение 3: временные модели (CNN + LSTM/TCN)
- Поколение 4: Vision Transformers с temporal-attention
- Поколение 5: Мультимодальные трансформеры (видео + CAN/IMU/руль)
- Методика нашего теста (прикладной подход)
- Сводные результаты: что показывает «средняя температура по рынку»
- Сравнительная таблица алгоритмов распознавания усталости
- Ключевые находки тестов
- Практика внедрения: от пилота к серийному развёртыванию
- Железо и оптимизация
- Политика приватности
- Бизнес-кейс для автопарков
- Чек-лист приёмочных испытаний (готовая шпаргалка)
- Типичные источники ошибок и как их лечить
- Настройка порогов под задачу
- Пример целевой конфигурации 2025 (баланс цена/качество)
- Сравнение стратегий оповещения (сводно)
- FAQ
Краткий глоссарий
- Drowsiness (сонливость) — вялость, частые микрозакрытия век, «клевки».
- Fatigue (усталость/утомление) — долгосрочное снижение тонуса и реакции; может проявляться без явного засыпания.
- PERCLOS — доля времени с закрытыми веками (напр. порог >80% за 60 сек).
- Microsleep — краткое (0,5–10 сек) непроизвольное отключение внимания/сна.
- Distraction (отвлечение) — взгляд в сторону/вниз (смартфон), поворот головы, манипуляции руками.
- TPR/FPR — True Positive/False Positive Rate.
- Latency — задержка от события до детекции/алерта.
Архитектуры и эволюция
Поколение 1: эвристики и PERCLOS
Используются ИК-камера и правила: частота моргания, степень закрытия век, угол кивания. Плюсы — дешевизна, низкая латентность. Минусы — чувствительность к очкам, освещению и индивидуальным особенностям.
Поколение 2: «лицо-глаза-позы» на CNN
Сверточные сети детектируют лицо, зрачки, landmarks, оценивают зевоту, кивок, взгляд. Качество растёт, но временной контекст слабый: система реагирует на моментальные сигналы и чаще ошибается на «аномальном, но нормальном» поведении (пение, разговор).
Поколение 3: временные модели (CNN + LSTM/TCN)
Добавление памяти по времени (LSTM/GRU, Temporal Conv) резко снижает ложные срабатывания, т.к. усталость — не одно мгновение, а динамика. Латентность увеличивается за счёт «окна наблюдения», но итоговая стабильность выше.
Поколение 4: Vision Transformers с temporal-attention
Модели внимания (ViT/Timesformer) лучше улавливают долгие паттерны: замедление моргания, постепенное падение тонуса. Дают прирост TPR при низком FPR, но требуют аккуратной оптимизации под бортовые SoC.
Поколение 5: Мультимодальные трансформеры (видео + CAN/IMU/руль)
Фьюжн видеопотока с телеметрией (скорость, удержание полосы, микрокоррекции рулём, поперечные колебания, педали) и с данными IMU/салонных датчиков. Такие модели лучше различают сонливость vs отвлечение, устойчивее к очкам/маскам, быстрее накапливают уверенность. Стоят дороже вычислительно, но дают наибольшую практическую ценность.
Методика нашего теста (прикладной подход)
Ниже — инженерная методика, на которую можно опереться при пилотах в такси/каршеринге/грузоперевозках. Значения метрик — усреднённые ориентиры по индустриальным пилотам и лабораторным сценарием; используйте их как реперные точки при своих испытаниях.
Набор сценариев:
- День / ночь / туннель / встречное солнце (слепящие блики, яркая тень).
- Очки: прозрачные, голубой фильтр, тёмные; маски/респираторы.
- Дороги: гладкий асфальт, грейдер, «стиральная доска» (вибрации).
- Профили водителей: с бородой/без, с макияжем/без, возрастные различия.
- Поведение: пение, разговор со спутником, жвачка/кофе, смартфон, аудиокнижка.
- Длительные заезды (3–5 часов) для ловли микросна.
- Температура салона: прохладно/жарко; шум вентиляции.
Сенсоры:
- Камера IR 850–940 нм (60 fps) + RGB-кадры (опционально).
- IMU салона/камеры, CAN-шина (скорость, удержание полосы через ADAS, угол рулевого, педали).
- (Опционально) давление на сиденье, ИК-термодатчик лба, ремень без отстёгивания (как прокси-сигнал позы).
Метрики:
- TPR@FPR=5% (правильные срабатывания при фиксированно низких ложных).
- F1 по классам: «сонливость», «усталость», «отвлечение».
- Time-to-alert (сколько секунд от начала эпизода до предупреждения).
- Robustness score (усреднение по тяжёлым сценариям: очки/встречное солнце/вибрации).
- Compute & power: латентность на ARM-ядрах/нейроускорителе, ватт-часы за смену.
- Privacy grade: офлайн-инференс, хранение видео, анонимизация.
Сводные результаты: что показывает «средняя температура по рынку»
Формат таблицы — сравнение классов алгоритмов, а не брендов. Показатели — ориентиры для целеполагания пилотов в 2025 году.
Сравнительная таблица алгоритмов распознавания усталости
| Класс алгоритма | TPR@FPR=5% (сонливость) | F1 (усталость, долгий горизонт) | F1 (отвлечение) | Средн. задержка алерта | Устойчивость к очкам/бликам | Требуемая мощность (Вт) | Пояснимость/лог причины | Пример железа (on-edge) |
|---|---|---|---|---|---|---|---|---|
| PERCLOS + эвристики | ~0.78 | ~0.62 | ~0.55 | 6–10 c | Низкая | 0.5–1.0 | Средняя (простые правила) | ARM A53/A55 |
| CNN (лицо/глаза/позы) | ~0.85 | ~0.70 | ~0.68 | 8–12 c | Средняя | 1–1.5 | Средняя (score по признакам) | ARM A75/A76 |
| CNN + LSTM/TCN | ~0.90 | ~0.78 | ~0.76 | 10–14 c | Средне-высокая | 1.5–2.5 | Средняя | ARM A76 + NPU |
| ViT c temporal-attention | ~0.92 | ~0.82 | ~0.80 | 9–13 c | Высокая | 2–3 | Ниже средней (attention-карты) | A76/Orin-NX |
| Мультимодал, ViT + CAN/IMU | ~0.95 | ~0.86 | ~0.88 | 7–11 c | Очень высокая | 2–3.5 | Средняя (модульные важности) | Orin-NX / ASIC DMS |
Как читать таблицу:
- Переход от эвристик к временным и мультимодальным моделям даёт +10–17 п.п. TPR при FPR=5% и сокращает время до алерта, потому что уверенность растёт быстрее за счёт контекста и фьюжна.
- Рост качества сопровождается умеренным ростом энергопотребления; оптимизация (квантизация/динамическая частота кадров/рамки ROI) возвращает систему в «бюджет» 2–3 Вт.
Ключевые находки тестов
- Временной контекст важнее точности отдельных кадров. Даже идеальная детекция века на одном кадре уступает последовательной модели, которая «видит» тренд.
- Фьюжн с CAN/IMU уменьшает ложные срабатывания на «пении/разговоре/жвачке»: видеомодель «думает», что это зевок, но телеметрия показывает стабильный контроль полосы и активные микроподруливания — вероятность сонливости снижается.
- Солнечные блики и тёмные очки — главный враг моно-видеомоделей. NIR-подсветка + auto-exposure + датчик освещенности + data-augmentation с бликами решают львиную долю проблем.
- Персонализация (онлайн-калибровка порогов на первых 15–30 мин поездки) даёт −20–30% ложных срабатываний без роста пропусков.
- Стратегия оповещений критична. Эскалация в 3 ступени (мягкий звуковой + подсветка → вибро-сиденье/руль → кратковременное ограничение ассистентов) снижает раздражение и повышает комплаенс водителей.
- Пояснимость помогает принятой водителем реакции. Простое сообщение «глаза закрыты >80% за 60 сек» или «взгляд вниз >2,5 сек при 90 км/ч» вызывает меньше негатива, чем «абстрактный» алерт.
Практика внедрения: от пилота к серийному развёртыванию
Железо и оптимизация
- Камера IR 60 fps + NIR-подсветка (регулируемая мощность, чтобы не «пересжигать» кадр при бликах).
- SoC с NPU (1–3 TOPS для реального времени), квантизация INT8, смешанная точность, вырезание фона (ROI на глазах/лице), динамический FPS (переход на 30 fps в «спокойных» отрезках).
- Фильтр дрожи (IMU камеры) для стабильных landmarks.
Политика приватности
- On-device inference, хранение только агрегатов (скользящие счётчики, а не видео), анонимизация при сервисной отправке, шифрование.
- Прозрачные настройки для водителя: просмотр истории алертов, кнопка «оспорить алерт», режим «не записывать видео/аудио».
Бизнес-кейс для автопарков
- Снижение ДТП «на прямой» и ночью, экономия по страховке, меньше простоев; типичный ROI 6–12 мес при установке на активные смены (такси, межгород, логистика).
- Внутренние KPI: алерты/100 км, доля подтверждённых алертов по выборочным проверкам супервайзера, время реакции водителя.
Чек-лист приёмочных испытаний (готовая шпаргалка)
- Описать профили маршрутов: день/ночь/туннель/блики/грейдер.
- Набрать минимум 30 водителей с разными особенностями (очки/борода/возраст).
- Снять не менее 100 ч видео, разметить события: микросон, зевок, взгляд вниз, кивок.
- Прогнать 3–5 классов алгоритмов: эвристики, CNN, CNN+LSTM, ViT, мультимодал.
- Считать TPR@FPR=5%, F1 по классам, latency, robustness.
- Провести A/B-настройку порогов и персонализацию (онлайн-калибровка).
- Проверить эскалацию алертов (3 уровня) и UX (порог раздражения).
- Финально — теневое наблюдение 2–4 недели на реальных линиях с аудитом ложных/пропущенных.
Типичные источники ошибок и как их лечить
- Жвачка/пение/разговор → ложные «зевки».
Решение: добавочный классификатор артикуляции, фьюжн с CAN/IMU. - Тёмные очки/линзы → пропуск закрытия век.
Решение: NIR-подсветка, обучение на синтетике бликов, fallback по позе головы + рулевым микрокоррекциям. - Смартфон на коленях → отвлечение без поворота головы.
Решение: вектор взгляда (gaze) + детектор пониженного взгляда, корреляция со скоростью. - Вибрации и ямы → дергаются landmarks.
Решение: фильтрация траекторий, IMU-стабилизация, строгая фиксация камеры. - Культура ложных подтверждений (водитель «отбивает» алерты).
Решение: таймауты на повторное подтверждение, альтернативный канал (вибро/свет), обучение персоналу.
Настройка порогов под задачу
- Дальнобой/ночные смены: стремимся к низкому FNR (не пропустить), допускаем FPR до 7–10% с мягкими алертами.
- Каршеринг/город: важен комфорт → FPR ≤3–5%, активнее используем персонализацию и «медленные» алерты.
- Премиум-OEM: акцент на «невидимости» системы → latency < 500 мс на кадрах, максимальный off-device privacy, адаптивный FPS.
Пример целевой конфигурации 2025 (баланс цена/качество)
- Камера IR 720p@60fps + автоэкспозиция + датчик освещенности.
- Модель: ViT-lite с temporal-attention + мини-LSTM (для устойчивости) + лёгкий фьюжн CAN/IMU.
- Инференс: INT8, NPU 2–3 TOPS, энергопакет до 3 Вт.
- Пороги: TPR@FPR=5% оптимизируем на валидации; персонализация 20 мин.
- UX: звуковой + контурная подсветка + легкая виброобратная связь; эскалация за 3 шага.
Сравнение стратегий оповещения (сводно)
| Стратегия | Раздражение водителя | Среднее время реакции | Вероятность игнорирования | Комментарий |
|---|---|---|---|---|
| Только звук | Среднее-высокое | Быстрое | Средняя | Дёшево, но быстро «замыливается». |
| Свет + звук | Ниже среднего | Быстрое | Ниже средней | Мягкая комбинация, хороша для города. |
| Вибро (руль/сиденье) | Низкое | Быстрое | Низкая | Тактильная связь повышает эффективность. |
| Эскалация 3-ступенч. | Низкое | Наилучшее | Наименьшая | Рекомендуется для серийных внедрений. |
- «Магия» последнего года — временные и мультимодальные модели. Они лучше улавливают именно усталость, а не просто закрытые глаза.
- Самый «быстрый» апгрейд для существующих систем — добавить CAN/IMU и персонализацию порогов.
- Правильная эскалация алертов и прозрачность объяснений — половина успеха внедрения.
FAQ
1) Чем усталость отличается от сонливости и почему это важно?
Сонливость — краткосрочное состояние (микросон, клевки). Усталость — долгий спад внимания и реакции. Алгоритмы, которые видят только закрытие век, пропускают «вялую» усталость без явного сна.
2) Достаточно ли одной камеры?
Для базовой детекции — да. Но на сложных сценах (очки, блики, вибрации, смартфон вне кадра) мультимодальность (CAN/IMU) заметно снижает ошибки.
3) Что выбрать для бюджетного проекта?
CNN+LSTM с хорошей NIR-подсветкой и персонализацией порогов. Это «золотая середина»: приемлемая вычислительная цена и высокая практическая точность.
4) Можно ли обойтись без персонализации?
Можно, но вы потеряете до 20–30% эффективности на ложных срабатываниях. «Подгонка» под водителя — дешёвый и действенный буст.
5) Как бороться с ложными «зевками», когда водитель поёт/разговаривает?
Вводите класс артикуляции в видео-модель и добавляйте телеметрию: если удержание полосы и коррекции руля стабильны — вероятность сонливости ниже.
6) Насколько важна частота кадров?
60 fps заметно улучшает надёжность blink/landmarks, особенно при вибрациях и «микросне». При стабильной сцене можно динамически снижать до 30 fps для экономии.
7) Хранить видео обязательно?
Нет. Лучший практический компромисс — on-device inference и хранение только агрегированных признаков и событий.
8) ДМS вмешивается в управление?
В легковых — обычно только предупреждает. В коммерческом транспорте допустимы мягкие вмешательства в ассистентов (ограничение круиз-контроля) на 3-й ступени эскалации.
9) Можно ли развернуть DMS на старых авто?
Да: универсальные комплекты «камера+блок+питание+крепление», интеграция с OBD-II/CAN через адаптер. Важно грамотно разместить камеру и провести калибровку.
10) Какие юридические риски?
Соблюдайте законы о персональных данных: локальная обработка, минимизация и шифрование данных, уведомление водителей и возможность оспаривать алерты.
11) Почему система иногда «молчит», хотя водитель явно клюёт носом?
Слишком жёсткий порог или недостаточный временной контекст. Увеличьте окно анализа/смягчите порог, проверьте качество подсветки и фокус камеры.
12) Что важнее при покупке: модель или UX?
Оба аспекта критичны. Без продуманной эскалации и объяснимых сообщений даже лучшая модель вызовет отторжение у водителей.



















