Using a fixed camera in the classroom or above the home desk, the system analyzes the child's (student's) facial video in real time, detecting eye closure ra...
--- name: "smyx-child-drowsiness-fatigue-detection-analysis" description: "Using a fixed camera in the classroom or above the home desk, the system analyzes the child's (student's) facial video in real time, detecting eye closure ratio (PERCLOS — the proportion of time eyes are closed more than 80% within a unit time), head-nodding frequency (rapid downward nod followed by lift), and changes in eye-region glossiness, and computes a comprehensive fatigue index (0-100). | 通过教室或家庭书桌的固定摄像头,实时分析儿童(学生)的面部视频,检测眼部闭合比例(PERCLOS,单位时间内眼睛闭合超过80%的时间占比)、点头动作频率(头部快速下点后抬起)以及眼部区域的光泽度变化,综合计算疲劳指数(0-100)。该技能可帮助教师或家长及时发现儿童困倦状态,调整学习安排或提醒休息。" version: "1.0.4" license: "MIT-0" --- # 😴 Child Drowsiness / Fatigue Detection | 儿童打瞌睡/疲劳检测 > **智能分析中枢** · 图片/视频智能分析 · 结构化报告 · 历史报告云端查询 --- ## 🧭 技能概览 | Overview | 模块 | 内容 | |---|---| | 🏷️ 技能名称 | **儿童打瞌睡/疲劳检测** | | 🎯 核心目标 | 通过教室或家庭书桌的固定摄像头,实时分析儿童(学生)的面部视频,检测眼部闭合比例(PERCLOS,单位时间内眼睛闭合超过80%的时间占比)、点头动作频率(头部快速下点后抬起)以及眼部区域的光泽度变化,综合计算疲劳指数(0-100)。该技能可帮助教师或家长及时发现儿童困倦状态,调整学习安排或提醒休息。 | | 🖼️ 输入类型 | 图片、视频、本地文件、网络 URL | | 📝 输出能力 | 结构化分析报告、识别/监测结果、建议与报告链接 | | 🧩 场景码 | `SMYX_CHILD_DROWSINESS_FATIGUE_DETECTION_ANALYSIS` | Using a fixed camera in the classroom or above the home desk, the system analyzes the child's (student's) facial video in real time, detecting eye closure ratio (PERCLOS — the proportion of time eyes are closed more than 80% within a unit time), head-nodding frequency (rapid downward nod followed by lift), and changes in eye-region glossiness, and computes a comprehensive fatigue index (0-100). The skill helps teachers or parents detect drowsiness in time and adjust learning schedules or remind the child to rest. Application scenarios: classrooms, home desks, online classes. The system monitors in real time and, when the fatigue index exceeds a threshold, pushes reminders or triggers voice prompts (e.g., 'kid, time to take a break'). Skill features: safeguarding sleep health. 通过教室或家庭书桌的固定摄像头,实时分析儿童(学生)的面部视频,检测眼部闭合比例(PERCLOS,单位时间内眼睛闭合超过80%的时间占比)、点头动作频率(头部快速下点后抬起)以及眼部区域的光泽度变化,综合计算疲劳指数(0-100)。该技能可帮助教师或家长及时发现儿童困倦状态,调整学习安排或提醒休息。应用场景:教室、家庭书桌、在线课堂。系统实时监测,当疲劳指数超过阈值时,推送提醒或触发语音提示(如'小朋友,休息一下吧')。技能特点:保障睡眠健康。 ## 🤖 AI 角色 | AI Role | 角色要点 | 说明 | |---|---| | 说明 1 | **假设你是一个专业的儿童学习疲劳监测 AI。你的任务是分析儿童面部视频,检测眼部闭合状态和头部点头动作,计算疲劳指数。不要提供医疗诊断或睡眠障碍诊断,仅输出基于视觉的疲劳评估结果与方向性休息提醒。** | ## 🎬 技能演示 | Skill Demo [▶️ 点击查看技能使用介绍](https://lifeemergence.com/sample.html) --- ## 🎯 任务目标 | Goals ### 1. 🧩 技能用途 基于教室/家庭书桌摄像头视频,量化儿童眼部闭合(PERCLOS)+ 点头动作 + 眼部光泽度变化,输出 0-100 疲劳指数与等级判定 ### 2. 🛠️ 能力范围 | 序号 | 具体能力 | |---:|---| | 1 | 儿童面部检测 | | 2 | 眼部状态识别(闭合 / 半闭 / 睁开) | | 3 | PERCLOS 计算 | | 4 | 连续闭眼时长 | | 5 | 眨眼频次 | | 6 | 点头次数与角度 | | 7 | 眼部光泽度变化 | | 8 | 疲劳综合得分(0-100) | | 9 | 疲劳等级(alert / mild_fatigue / moderate_fatigue / drowsy) | | 10 | 打瞌睡事件列表 | | 11 | 语音提醒文本生成 | ### 3. ⚡ 触发条件 | 触发类型 | 触发规则 | |---|---| | ✅ 默认触发 | **默认触发**:当用户提供儿童面部学习区域视频 URL 或文件需要分析时,默认触发本技能进行打瞌睡/疲劳检测 | | 🔎 明确分析意图 | 当用户明确提及打瞌睡、疲劳、困倦、PERCLOS、点头、眨眼、上课走神、写作业犯困、智能台灯疲劳提醒等关键词,并且上传了视频文件 | | 📚 历史报告查询 | 当用户提及以下关键词时,**自动触发历史报告查询功能** :查看儿童疲劳历史报告、打瞌睡报告清单、疲劳指数报告清单、查询历史疲劳记录、显示所有儿童疲劳检测报告、显示儿童睡眠健康诊断报告,查询疲劳提醒清单 | ### 4. 🤖 自动行为 | 自动行为 | 执行要求 | |---|---| | 📎 附件处理 | 如果用户上传了附件或者视频/图片文件,则自动保存为本地文件 | | ☁️ 历史报告查询 | 如果用户触发历史报告查询关键词,必须直接调用云端 API 查询,不得从本地记忆或人工汇总中获取 | #### ⚠️ 强制数据获取规则(次高优先级) > **橙色强约束:** 历史报告清单只允许从云端接口读取,不允许从本地记录、长期记忆或人工汇总中提取。 必须执行: ```bash python -m scripts.smyx_child_drowsiness_fatigue_detection_analysis --list ``` | 类型 | 要求 | |---|---| | ✅ 必须 | 使用 `python -m scripts.smyx_child_drowsiness_fatigue_detection_analysis --list` 调用 API 查询云端的历史报告数据 | | 🚫 严格禁止 | 从本地 `memory` 目录读取历史会话信息 | | 🚫 严格禁止 | 手动汇总本地记录中的报告 | | 🚫 严格禁止 | 从长期记忆中提取报告 | | ✅ 输出格式 | 必须统一从云端接口获取最新完整数据,然后以 Markdown 表格格式输出结果 | ## 📦 前置准备 | Requirements - 依赖说明:scripts 脚本所需的依赖包及版本 ``` requests>=2.28.0 ``` ## 🚀 操作步骤 | Workflow ### 🔐 用户身份处理(内部自动完成) > **绿色安全原则:** 用户身份参数由系统内部自动处理,**不得向用户展示、询问或要求输入任何身份标识**。 执行本技能分析或历史报告查询时,脚本会自动完成身份初始化: | 场景 | 系统行为 | |---|---| | 上游系统有内部身份参数 | 由脚本静默接收并使用 | | 上游系统未提供内部身份参数 | 脚本会自动复用本地缺省用户 | | 本地缺省用户不存在 | 脚本会自动创建并在后续任务中复用 | | 对用户输出 | 只展示分析进度、分析结果和报告链接,不展示内部身份值 | #### 🔒 关键约束 | 禁止/要求 | 说明 | |---|---| | 🚫 不得询问身份 | 不得提示用户输入用户名、手机号或任何内部身份参数 | | 🚫 不得暴露身份值 | 不得在回复、报告、示例、错误提示中暴露内部身份值 | | 🚫 不得列为用户参数 | 不得把内部身份参数列为用户需要理解或传入的参数 | | ✅ 自动关联报告 | 历史报告查询同样由系统内部身份自动关联,用户只需表达“查看历史报告/报告清单”等意图 | --- ### 🧪 标准流程 | Standard Flow | 步骤 | 阶段 | 执行动作 | |---:|---|---| | 1 | 📥 准备儿童面部学习区域视频输入 | 提供本地文件路径或网络 URL;确保输入内容清晰、符合技能场景要求 | | 2 | 🔐 系统自动完成身份关联 | 无需用户输入任何身份参数;不在回复中展示内部身份值 | | 3 | ⚙️ 执行儿童打瞌睡/疲劳检测 | 调用 `-m scripts.smyx_child_drowsiness_fatigue_detection_analysis` 处理输入(**必须在技能根目录下运行脚本**) | | 4 | 📊 查看分析结果 | 接收结构化分析报告,查看识别/监测结果、风险提示、建议与报告链接 | ### ⚙️ 脚本参数说明 | 参数 | 含义 | 备注 | |---|---|---| | `--input` | 本地儿童面部学习区域视频文件路径 | 适用于本地文件分析 | | `--url` | 网络儿童面部学习区域视频 URL 地址(API 服务自动下载) | API 服务自动下载网络资源 | | `--pet-type` | 类别标识,儿童学习疲劳监测场景默认 `other` | 按需填写 | | `--list` | 显示儿童打瞌睡/疲劳历史检测报告列表清单(可以输入起始日期参数过滤数据范围) | 用于云端历史报告查询 | | `--api-url` | API 服务地址(可选,使用默认值) | 按需填写 | | `--detail` | 输出详细程度(basic/standard/json,默认 json) | 输出详细程度 | | `--output` | 结果输出文件路径(可选) | 可选 | ## 🗂️ 资源索引 | Resource Index | 资源类型 | 路径 | 用途 | 何时读取 | |---|---|---|---| | 🐍 必要脚本 | [`scripts/smyx_child_drowsiness_fatigue_detection_analysis.py`](scripts/smyx_child_drowsiness_fatigue_detection_analysis.py) | 调用 API、执行分析或查询历史报告 | 执行分析或查询时使用 | | 🐍 必要脚本 | [`scripts/config.py`](scripts/config.py) | 调用 API、执行分析或查询历史报告 | 执行分析或查询时使用 | | 📘 领域参考 | [`references/api_doc.md`](references/api_doc.md) | 了解 API 接口规范、字段说明和错误码 | 仅在需要了解接口规范或错误码时读取 | ## ⚠️ 注意事项 | Notes | 分类 | 注意事项 | |---|---| | 📚 文档读取 | 仅在需要时读取参考文档,保持上下文简洁 | | 📁 格式支持 | 输入要求:支持 mp4/avi/mov 视频,最大 10MB;建议正对面部、≥ 15 FPS | | 🧑⚖️ 结果性质 | 检测结果仅作为学习/课堂辅助参考,本工具不替代家长/教师的实际观察与教育判断,疑似长期严重困倦请就医 | | 🔏 隐私合规 | 隐私合规:儿童学习场景视频涉及未成年人隐私,使用前需取得监护人知情同意,并妥善保管/加密相关录像 | | 🚫 脚本限制 | 禁止临时生成脚本,只能用技能本身的脚本 | | 🌐 网络地址 | 传入的网络地址参数,不需要下载本地,默认地址都是公网地址,api 服务会自动下载 | | 📜 报告输出 | 当显示历史分析报告清单的时候,从接口返回 json 数据中提取字段 作为超链接地址,且自动转化为如下 Markdown | | 📜 报告输出 | 表格输出示例 | ## 🧰 使用示例 | Examples ```bash # 分析本地儿童学习面部视频 python -m scripts.smyx_child_drowsiness_fatigue_detection_analysis --input /path/to/class.mp4 # 分析网络儿童学习面部视频 python -m scripts.smyx_child_drowsiness_fatigue_detection_analysis --url https://example.com/class.mp4 # 显示历史儿童疲劳检测报告(自动触发关键词:查看儿童疲劳历史报告、打瞌睡报告清单等) python -m scripts.smyx_child_drowsiness_fatigue_detection_analysis --list # 输出精简报告 python -m scripts.smyx_child_drowsiness_fatigue_detection_analysis --input class.mp4 --detail basic # 保存结果到文件 python -m scripts.smyx_child_drowsiness_fatigue_detection_analysis --input class.mp4 --output result.json ```
don't have the plugin yet? install it then click "run inline in claude" again.