视频采集模块
封装 getUserMedia、视频播放状态和 MediaStreamTrack 生命周期,提供前置摄像头约束、权限异常处理与结束清理。
本次会话分析 · 不保存视频
日常刷牙练习
打开摄像头后,跟随区域提示完成一次刷牙练习。画面只在当前浏览器会话中使用,结束后自动清空。
实时取景
本次训练报告
已完成本次刷牙练习。
使用方法
让脸部清楚出现在镜头中,使用明亮环境。
按提示逐个练习,需要时切换内侧或外侧。
完成后查看本次覆盖情况,不保存任何影像。
技术文档
本系统采用浏览器端实时取景、姿态关键点计算、区域状态管理与轻量服务端复核组成的技术架构。以下内容只说明系统采用的技术、数据流和模块设计。
视频流由浏览器媒体接口提供,前端在内存中完成帧读取和坐标计算;FaceLandmarker 提供口腔参考点,HandLandmarker 提供手部关键点,随后通过归一化坐标映射到上 / 下、左 / 中 / 右和内 / 外侧的 12 个状态。Canvas 2D 负责参考线与定位点绘制,Flask 接收按间隔生成的压缩帧并返回结构化复核提示。
| 功能名称 | 刷牙训练与分区检测系统 |
| 客户端形态 | HTML5 / CSS3 / JavaScript ES2022 单页浏览器应用 |
| 核心定位技术 | MediaPipe Tasks Vision 0.10.9、FaceLandmarker、HandLandmarker |
| 浏览器接口 | HTML5 getUserMedia、HTMLVideoElement、Canvas 2D、requestAnimationFrame |
| 服务端技术 | Python 3.12、Flask、Requests、Gunicorn |
| 状态模型 | 基于 JavaScript 内存对象的单次会话状态,包含计时器、动作点、方向、12 区域覆盖值 |
| 部署方式 | Ubuntu + systemd 进程托管 + Nginx HTTPS 反向代理 |
| 数据策略 | 视频帧只在当前浏览器会话中处理;服务端不建立视频文件、图片目录、账号或历史记录 |
封装 getUserMedia、视频播放状态和 MediaStreamTrack 生命周期,提供前置摄像头约束、权限异常处理与结束清理。
封装 FaceLandmarker 与 HandLandmarker 的模型加载、VIDEO 模式逐帧调用、嘴部参考点计算和候选手指筛选。
把归一化坐标和当前练习面编码成 12 个区域键,按区域独立累加覆盖值,并通过 Canvas 2D 显示当前参考位置。
使用 performance.now 与 setInterval 建立统一时间基准,计算剩余时间、覆盖数量、动作次数并生成会话内报告。
Flask 提供健康检查和 `/api/review-frame` JSON 接口,限制单帧大小、校验数据格式并为上游不可用场景提供本地结果。
| 技术模块 | 关键技术 | 核心处理 | 输出 |
|---|---|---|---|
| 采集与渲染 | getUserMedia、HTMLVideoElement、Canvas 2D | 视频流绑定、帧尺寸同步、参考图形绘制 | 实时取景与定位叠加层 |
| 姿态定位 | FaceLandmarker、HandLandmarker | 嘴部基准与手指候选点提取 | 归一化坐标点 |
| 状态计算 | JavaScript 内存状态、requestAnimationFrame | 方向向量、区域键、覆盖值和计时更新 | 12 区域状态与动作提示 |
| 服务端复核 | Flask、Requests、JSON、JPEG | 帧大小限制、复核请求、超时兜底 | 结构化提示结果 |
| 运行托管 | Gunicorn、systemd、Nginx、HTTPS | 进程守护、反向代理、TLS 终止 | 稳定的 `/brushing-coach/` 服务入口 |
参考文献
以下资料为与刷牙时长、区域覆盖、动作引导和数字化口腔卫生干预相关的公开英文文献。每份文件均已校验为可打开的 PDF。
Deinzer R, Weik U, Eidenhardt Z, et al. PLOS ONE. 2024;19(7):e0306302.
关联内容:不同刷牙方向与手动刷牙方法的证据综述,可用于说明区域化、动作引导的研究背景。
Takase N, Nishiura M, Okazawa Y, et al. PLOS ONE. 2020;15(6):e0235194.
关联内容:验证实时可视化刷牙提示在成人刷牙训练场景中的应用价值。
Scheerman JFM, van Meijel B, van Empelen P, et al. International Journal of Dental Hygiene. 2020;18:73–83.
关联内容:移动端教育、自动化辅导与口腔卫生行为改善的随机对照研究。
Glenny A-M, Walsh T, Iwasaki M, et al. International Dental Journal. 2024;74(3):526–535.
关联内容:国际专业共识,涉及刷牙频率、时长、覆盖全牙面和日常口腔卫生行为建议。
文件来自开放获取文献库,仅用于本项目的学习、展示与研究参考;引用、再发布或商业使用请遵守各原文的许可与署名要求。