发际线生发遮罩算法(mask_type=pushed): - _extract_hairline:提取头发/皮肤交界线(逐列头发下沿),用 baseline 水平 y 线截断(无竖线) - _pushed_mask:以眉心(151点)为圆心逐点径向外推 push_cm,与 baseline 组闭合区域 - 径向归并锯齿用插值填补,避免遮罩碎裂 - pushed 模式过程可视化(①-f 交界线 / ①-g 外推+遮罩),eroded/closed 不展示无关步骤 multiband 金字塔融合修复(hairline_grow.py): - mb_levels 按层数膨胀外缘 keep 区,让过渡带随层数变宽(旧硬二值钳回导致 mb_levels 形同虚设) 接口12 grow_v2(固定参数精简版): - 固定 multiband/mb_levels=5/erode_cm=0.6,仅返回 final_base64 - 支持 mask_type=pushed + hairline_push_cm/hairline_edge 调试支持: - 调试页 test_interface11_debug.html(前后端日志面板 + 下载日志按钮) - hairline_grow.log 全链路日志(按 rid 关联),/api/v1/debug/hairline_log 下载接口 - 遮罩计算过程可视化(baseline/upper/头发分割/交界线/外推/最终遮罩) 文档与脚本: - docs/发际线生发遮罩算法_pushed模式.md 算法说明 - scripts/batch_grow_v2.py 批量调用、gen_report_hairline_v2.py 对比报告生成
文档索引
旷视五接口(四庭七眼测量 / C端生发 / B端生发 / 用户特征 / 发际线PNG)。系统拆成 外网网关 + 高性能 worker(GPU) 两台机器、一个仓库。
| 文档 | 作用 |
|---|---|
| 实现说明.md | 实现总览:架构、五个接口怎么实现、base64→URL 映射、错误码、部署/环境要点。先读这份。 |
| 接口文档.md | 对外 API 契约(字段 / 错误码)。字段命名的唯一权威。 |
| 旷视具体需求.md | 原始需求。 |
| ../OFFLINE_ASSETS.md | worker 离线模型权重/字体清单(内网部署)。 |
原先分散的「各接口技术方案 / 开发任务书 / 系统架构 / 网关任务书」已合并进
实现说明.md(细节可查 git 历史)。