Project

General

Profile

Actions

Task #6637

open

Детектор морганий и расчёт частоты морганий

Added by Redmine Admin about 1 month ago. Updated about 1 month ago.

Status:
New
Priority:
Normal
Assignee:
-
Start date:
09/21/2026
Due date:
% Done:

0%

Estimated time:

Description

Заказчик просит детектор морганий и калькулятор.

Нужно: сигнал закрытия глаз на каждом кадре, детектор морганий как событий (закрыл — открыл, с длительностью), частота морганий в минуту по скользящему окну, метрика Blinks каталога в ядре, число морганий на карточке каждого лица.

Предыстория: #6605 — меш не опускал веки на клипе с морганиями при прежнем кропе. Сначала перемерить на текущем кропе; если веки всё ещё не двигаются, брать закрытие по пикселям области глаза, которую меш кладёт верно. Сверить алгоритм с eye/eyeMetrics.js в focus24. Эталонная разметка кадров клипа blink.mp4 — по снимкам.

Actions #1

Updated by Redmine Admin about 1 month ago

Моргания готовы (не закоммичено).

  • Ядро: BlinkCounter по правилам eyeMetrics.js (порог 0.9, 50–500 мс, длинное > 200 мс; частота — среднее 3 последних минут, до минуты — счёт за промежуток ≥ 30 с). Моргание меряется от последнего открытого кадра до следующего открытого: при 30 кадр/с моргание 100 мс закрыто на 1 кадре. Ядро заполняет метрику Blinks.
  • Натив: закрытие глаза по доле тёмных пикселей внутри контура глаза (веки сетки плоские, EAR 0.36–0.39). Открытое состояние лица — 80-й перцентиль за 90 кадров, усиление 1.6.
  • Ролик blink: 14 из 15 морганий; остальные 8 роликов: 0–2.
  • Карточка лица: строка BLINK — N/m с тоном по полосе метрики, до появления частоты — счёт Nx.
  • Тесты: tests/physiology/blinks.rs (10), tests/app.rs (+2), tests/domain/eyes.rs (5), карточки (+2). tools/check.sh: 15 из 15.
Actions

Also available in: Atom PDF