Commit Graph
10 Commits
Author SHA1 Message Date
Ubuntu eae22d18a1 fix: 拍照引导检测链路校准——模拟摄像头闭环修复四个实测问题
用户真机症状:一直『未检测到人脸』;脸进框却提示太远;凑近又超框。用 C3 三视图生成 Y4M 模拟摄像头闭环复现并定位:

- 检测可靠性:tinyFaceDetector 320/0.4 → 416/0.3(正脸置信度 0.67→0.99,框更准);连续漏检 ≥3 帧才报未检测到人脸(单帧抖动不再刷屏)
- 距离阈值:0.35/0.8 → 0.26/0.58(以取景框≈42% 屏高、416 输入实测框 0.40–0.44 标定;原阈值下脸进框即误判太远)
- HeadPose:check() 双重镜像符号 bug(estimate 已翻转 yaw,check 又翻一次→侧脸引导方向相反);YAW_COEFF 2.2→3.8(±45° 侧脸实测只读 ±25°);PITCH_BASELINE 0.32→0.45(正脸误读 29° 被判低头)
- head-pose 自测夹具按新系数数值标定,全部通过
- e2e 新增 E7:模拟摄像头全自动三连拍(正脸→右脸→左脸,姿态引导+倒计时+抓帧,分析请求拦截不烧次数包),全量绿
2026-09-27 00:47:22 +08:00
Ubuntu cc83987043 feat: 语音播报契约与播放模块 + 相册选图 + 报告历史存储/服务端落盘
- docs/语音播报内容设计文档_V1.0.md:14 条播报文案/触发时机/文件名契约;格式定 MP3(iOS Safari/微信不支持 OGG);播放层 WebAudio 单通道、4s 去重、manifest.json 清单制(文件待生成,缺失静默跳过)
- 相册:相机页「相册」按钮接系统图库(#album-file 不带 capture),与实拍同管线压 1280 推进,替换 Toast 占位
- 报告历史:检测成功按「检测」为单位存 localStorage(juzi.reports.v1,5 条上限)——三张照片+档案+评分数据+marks 坐标,不含 face_maps 图层;报告页「历史」列表可回看/删除/清空,回看时坐标叠加类图仍可用
- server.js:每次检测完整原始返回落盘 h5/data/results/(复核/真值,已 .gitignore)
- e2e:新增 E5(相册三连拍)/E6(存储与历史回看)断言,E3 增落盘校验;全量绿(含真实 API 闭环)
2026-09-27 00:05:34 +08:00
xsl f8de5f881a 完成语音生成 2026-09-27 00:03:34 +08:00
Ubuntu 7d72d7dd5a save 2026-09-26 23:55:11 +08:00
Ubuntu 859d262fe3 feat: 隐私政策与服务协议全文接入(替换占位层)
- Face⁺⁺个人信息与隐私保护政策(前言+正文八章)全文排版接入 #p-policy:全屏文档页(sticky 头部+返回、品牌黄章节标记、两端对齐正文、有序/无序列表、加粗术语),来源飞书 1meUI设计 wiki
- e2e 新增 E4:协议打开/全文字数/关键章节/无占位残留断言,附首中末三张截图
- README 占位清单移除隐私协议条目
2026-09-26 23:30:41 +08:00
Ubuntu aa46d87419 fix: 启动页背景素材贴边黑/亮楔子——按 Figma 画框等效区域重裁
- 根因:PSD 源图(1414×2423)本身是拼贴件,照片四周带黑楔/灰带/亮块,Figma 画框靠定位裁掉楔子,原型直接引用原图导致楔子外漏(左黑边/右下黑边/右上亮边/左下亮边)
- 修复:取画框映射等效干净区 (180,60,1240,2381) 重裁出 1060×2321,profile-bg 同源同步修复
- 测试:e2e 新增 E0 多视口启动页边缘视觉回归(352×736/375×812/390×844/414×896,自写 PNG 解码+均匀纯黑/纯白连续段检测,区分照片暗发/高光),此前单视口+DOM 断言发现不了该类问题
- 截图: preview/e2e-20260926 增补 4 张多视口启动页
2026-09-26 23:16:32 +08:00
Ubuntu ba3b346fce feat: 报告页 V2.2 检测可视化 + 评分引擎审计 + 真值回归/e2e 闭环
- server.js: face_maps 改为白名单 5 图层完整 dataURL 透传(REPORT_MAPS,按魔数判 mime),marks 坐标随 result 原样透传;实测 return_marks 不支持毛孔/黑头等扩展标记
- skin-score.js: 按需求文档 V2.2 逐字审计修正 9 处(黑眼圈 dark_circle_severity、oil_desc/spot_flag §7.2 拼接、skintone 中文映射、轮廓预警档前缀、痘痘 heavy_note、50+精华全文、综合文案数值格式),契约引用 V2.0→V2.2
- app.js/index.html/css: 报告页 6 分类检测可视化(轮廓=正脸实拍、皱纹=正脸压暗+皱纹增强线、光滑=正脸+色斑/痣/痤疮标记、肤色=色沉图、敏感=红区图、痘痘=正脸+闭口/痤疮标记),数据驱动 VIZ_CAT 配置,优雅降级
- h5/test/: Excel 两组三视图真值回归 84/84(含案例2 AY 列扁平化数据重建 fixture)
- h5/assets/mock/: 真实案例1 报告页 fixture(坐标与照片同比例缩放),?mock=1&screen=report 直渲
- e2e: Chrome 无头闭环 55/55(mock 全流程/直渲/真实 API 降级链路),截图存档 preview/e2e-20260926
- 自测: skin-score 83/83,fixture 冒烟 35/35
2026-09-26 22:35:02 +08:00
xsl 71a090fd75 跟新需求文档 2026-09-26 19:50:39 +08:00
xsl 5957ef04fc feat: 接入 Face++ 真实测肤 + 三轮多角色迭代修复
Face++ 集成(高阶版 skinanalyze_advanced):
- h5/server.js:零依赖 Node 后端,静态托管 + /api/skin-analyze 中转,
  api_secret 只存服务端(从 apikey.bash/env 读取,.gitignore 已排除)
- 实时相机:getUserMedia 自拍取景,不可用时降级系统相机;
  相机令牌防授权回调泄漏摄像头;离开拍照页即释放
- 检测流:三连拍仅送检正面照(压至 1280px JPEG),错误码→友好提示
- 结果映射:肌肤年龄=skin_age 真实值;紧塑力/活力感/稳定力由真实
  维度合成;具体描述按检出项动态生成;检测图用用户实拍
- ?mock=1 内置样本供离线/自动化验证;README 补充部署与 HTTPS 说明

三轮迭代修复(QA+美术并行审计→开发统一修复,共 ~28 项):
- 功能:P1 鼠标拖拽轮播(Pointer Events+setPointerCapture)、
  快门/返回竞态(camSeq 令牌)、报告页状态重置、弹窗 ESC/遮罩关闭
- 视觉:还原度 80%→94%,档案页布局/弹窗比例/报告页产品卡等
  结构性偏差修正,字号/间距逐项实测核销
- 工程化:首屏 701KB→386KB(懒加载+preload+清理 212KB 无用资源)、
  favicon/SEO meta/隐私协议占位层/README

Review 修复:server.js 路径穿越前缀绕过(ROOT+sep 校验)、
getUserMedia 迟到回调释放相机(camSeqCam 令牌)
2026-09-22 21:06:33 +08:00
xsl e4e85d2805 feat: 巨子测肤 H5 原型(按 Figma 设计稿还原)
- design/: Figma 设计稿提取产物 — 设计规范文档、9 张整屏预览、
  8 个 SVG 组件切图、15 张位图素材、完整节点数据(full.json)
- h5/: 纯静态 H5 实现 — 启动页/隐私弹窗/档案填写(肤质轮播)/
  三连拍照/报告页,375px 基准还原,含压缩素材与 Playwright 验收截图
2026-09-21 23:25:01 +08:00