39 lines
2.7 KiB
Markdown
39 lines
2.7 KiB
Markdown
# 痘痘按三视图各类型最大数量计分
|
||
|
||
## 规则
|
||
|
||
正脸读取 `result.<type>`,侧脸读取 `left_side_result.left_acne_info.<type>` / `right_side_result.right_acne_info.<type>`。每类分别取有效数量的最大值,不累加,也不是选皮损总数最多的照片。
|
||
|
||
| 类型 | 字段 | 每处扣分 |
|
||
|---|---|---:|
|
||
| 闭口 | closed_comedones | 1 |
|
||
| 丘疹 | acne | 2 |
|
||
| 脓包 | acne_pustule | 4 |
|
||
| 结节 | acne_nodule | 6 |
|
||
| 痘印 | acne_mark | 1.5 |
|
||
|
||
计数优先 `.count`,缺失时兼容已有矩形数量回退;负数、非整数、非有限数不计为有效数量。明确0才算未检出。
|
||
|
||
`计数扣分=min(50, Σ各类最大数量×权重)`。
|
||
|
||
正脸 `score_info.acne_score` 的既有100/85/70/55分档映射不变,侧脸整体评分不合并。
|
||
`痘痘P=min(正脸评分映射值,100−计数扣分)`;某一项缺失时仅用其他有效项;计数全部缺失则仅用正脸评分,二者都缺失不生成痘痘分。
|
||
|
||
报告文案与计分共用合并数量,侧脸检出脓包/结节也影响相应提示,计数不完整不声称完全未检出。这里的数量是三视图各类型最大值汇总,不等同于跨视图去重后的真实全脸总数。
|
||
|
||
## 后台和历史
|
||
|
||
新记录保存 `acne_scoring`,版本 `three-view-type-max-v1`,包括五类正/左/右数量、最大值、来源视图、权重、每项扣分、扣分合计/封顶结果、完整性和正脸评分/映射值。
|
||
后台详情展示计分明细表。报告快照同步保存用于展示的变量。旧记录和快照不迁移、不改写,历史推荐保持原样。
|
||
|
||
## 验证
|
||
|
||
- `node h5/test/acne-three-view.js`:分类分别取最大而非相加、不同类型来自不同视图、并列值、缺失/零/非法数量、计数回退、正脸评分约束、50分封顶、侧脸中重皮损文案与源数据不变。
|
||
- `H5_ACNE_MAX_TEST=1 node h5/test/report-persistence.mjs`:隔离合成三视图验证计分、报告文案、后台明细、保存/回看、CSV、历史不可变。
|
||
- `node h5/test/regression.js`:旧case2期望显式更新为侧脸闭口1处参与扣分;原始fixture不改写。
|
||
- 私有案例目录回放:`H5_WRINKLE_CASE_DIR=<private directory> node h5/test/wrinkle-case-browser.mjs`。
|
||
|
||
`R20261014-171215-CYLF`:闭口为0/1/0→取1,丘疹为0/1/1→取1,其他三类为0。扣3分,痘痘P=97、S=9.91,稳韧力由原9.97变为9.91。与待上线的整体皱纹规则合用,紧塑力8.95、透亮感9.63,综合得分`round(8.95×4+9.63×3+9.91×3)=94`(仅皱纹修改时为95)。
|
||
|
||
当前本地实现,未提交或部署;此前待发布的北京时间、整体皱纹评分修改继续保留。所有回放使用隔离数据和固定接口返回,不调用付费检测、不写线上记录。
|