[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"solution-scenes-menu":3,"tech-detail-2576":4},true,{"id":5,"title":6,"content":7,"picUrl":8,"tagIds":9,"keyWords":10,"htmlDescribe":11,"htmlUrl":12,"gmtCreate":13,"gmtModified":13,"articleInfoId":14},"2576","畅联云平台丨03-SCRFD人脸检测与关键点","\u003Ch1 style=\"line-height:2\">SCRFD 人脸检测与五官关键点：从 ROI 到可对齐几何\u003C\u002Fh1>\u003Cp style=\"line-height:2\">本文讲透一件事：在本项目里，一张（或一块）BGR 图如何变成 人脸框 + 分数 + 五个关键点。重点是 SCRFD 的 左上角 pad 预处理（不是居中 letterbox）、多 stride 解码公式、全图 Tile 补检、以及人体 ROI 内检脸时的坐标叠层。关键点质量直接决定后续对齐；框对了点错了，识别会「自信地错」。\u003C\u002Fp>\u003Chr \u002F>\u003Ch1 style=\"line-height:2\">一、人脸检测要交付什么\u003C\u002Fh1>\u003Cp style=\"line-height:2\">业务侧一次成功的检测至少包含：\u003C\u002Fp>\u003Cp style=\"line-height:2\">box: (x, y, width, height) \u002F\u002F 原图或当前坐标系\u003C\u002Fp>\u003Cp style=\"line-height:2\">score: \u003Cspan style=\"color:rgb(225, 60, 57)\">float\u003C\u002Fspan> \u003C\u002Fp>\u003Cp style=\"line-height:2\">kps: Point2f[5] \u002F\u002F 左眼、右眼、鼻尖、左嘴角、右嘴角\u003C\u002Fp>\u003Cp style=\"line-height:2\">顺序必须与对齐模板一致。本项目 ArcFace 对齐使用 InsightFace 常见顺序；写反左右眼会导致 112×112 花屏般扭曲。\u003C\u002Fp>\u003Cp style=\"line-height:2\">默认权重路径为\u003Cspan style=\"color:rgb(225, 60, 57)\"> .\u002Fmodels\u002Fscrfd_2.5g_bnkps.onnx（bnkps \u003C\u002Fspan>表示带关键点）。输入边长 SCRFD 路径为 640（YuNet 回退为 320）。\u003C\u002Fp>\u003Chr \u002F>\u003Ch1 style=\"line-height:2\">二、为何常在人体 ROI 内检脸\u003C\u002Fh1>\u003Cp style=\"line-height:2\">两条路线：\u003C\u002Fp>\u003Cp style=\"text-align:center;line-height:2\">\u003Cimg src=\"https:\u002F\u002Fqu-link.oss-cn-hangzhou.aliyuncs.com\u002F2026\u002F08\u002F26\u002F5d708a78-d412-48d8-9d1a-add39e718921.png\" alt=\"\" loading=\"lazy\" \u002F>\u003C\u002Fp>\u003Cp style=\"line-height:2\">跟踪路径上 ROI = clamp 后的人体框本身，不做外扩。这与「经验上上下左右 pad」的科普叙述不同——本项目选择更紧的 ROI，换取更少邻人探入，代价是人体框偏短时可能切脸。配置上用人脸分数阈值（默认约 0.40）与过大脸过滤补偿。\u003C\u002Fp>\u003Cp style=\"text-align:center;line-height:2\">\u003Cimg src=\"https:\u002F\u002Fqu-link.oss-cn-hangzhou.aliyuncs.com\u002F2026\u002F08\u002F26\u002F42aed383-a4d6-416f-a74b-90dddd088d1b.png\" alt=\"\" loading=\"lazy\" \u002F>\u003C\u002Fp>\u003Cp style=\"text-align:center;line-height:2\">\u003Cspan style=\"font-size:12px\">图：在人体检测框内裁 ROI 做人脸检测；本项目跟踪路径默认不外扩，仅 clamp 到画幅，减少邻脸入侵。\u003C\u002Fspan>\u003C\u002Fp>\u003Cp style=\"line-height:2\">\u003Cbr \u002F>\u003C\u002Fp>\u003Cp style=\"line-height:2\">对每个人体框：\u003C\u002Fp>\u003Col>\u003Cli style=\"line-height:2\">clamp ROI，跳过 &lt;32×32；\u003C\u002Fli>\u003Cli style=\"line-height:2\">优先 动态 batch 一次跑多个 ROI；\u003C\u002Fli>\u003Cli style=\"line-height:2\">把相对 ROI 的 box\u002Fkps 加上 roi.x\u002Froi.y 回到全图；\u003C\u002Fli>\u003Cli style=\"line-height:2\">过大脸过滤 去掉过大脸（海报、误检）。\u003C\u002Fli>\u003C\u002Fol>\u003Cp style=\"line-height:2\">失败模式： 只平移了 box、忘了 kps → 对齐用错点；ROI 过小未放大 → 远脸永远无点。\u003C\u002Fp>\u003Chr \u002F>\u003Ch1 style=\"line-height:2\">三、SCRFD 预处理：左上角 pad，不是居中\u003C\u002Fh1>\u003Cp style=\"line-height:2\">YOLO 人体常用 居中 letterbox；SCRFD 在本项目明确是 InsightFace 风格 resize + 左上角粘贴——不是居中 Letterbox：\u003C\u002Fp>\u003Cp style=\"line-height:2\">要点：\u003C\u002Fp>\u003Cul>\u003Cli style=\"line-height:2\">等比缩放，使较长边贴合 目标边长（方输入）；\u003C\u002Fli>\u003Cli style=\"line-height:2\">黑边在右\u002F下，有效内容贴在左上角 (0,0)；\u003C\u002Fli>\u003Cli style=\"line-height:2\">\u003Cspan style=\"color:rgb(225, 60, 57)\">det_scale = new_h \u002F src.rows\u003C\u002Fspan>（与宽度缩放一致，因等比）；解码时用 inv_scale = 1\u002Fdet_scale 把网络坐标乘回预处理前图。\u003C\u002Fli>\u003C\u002Ful>\u003Cp style=\"line-height:2\">左上角 pad 预处理：\u003C\u002Fp>\u003Cpre>\u003Ccode>\u002F\u002F InsightFace SCRFD：左上角 pad，不是居中 Letterbox\nvoid scrfd_prepare_input_bgr(const cv::Mat &amp;src, int target_size,\n cv::Mat &amp;out, double &amp;det_scale) {\n const double im_ratio = (double)src.rows \u002F (double)src.cols;\n int new_w = 0, new_h = 0;\n if (im_ratio &gt; 1.0) {\n new_h = target_size;\n new_w = (int)std::lround((double)new_h \u002F im_ratio);\n } else {\n new_w = target_size;\n new_h = (int)std::lround((double)new_w * im_ratio);\n }\n new_w = std::max(1, std::min(target_size, new_w));\n new_h = std::max(1, std::min(target_size, new_h));\n cv::Mat resized;\n cv::resize(src, resized, cv::Size(new_w, new_h));\n out = cv::Mat::zeros(target_size, target_size, CV_8UC3);\n resized.copyTo(out(cv::Rect(0, 0, new_w, new_h))); \u002F\u002F 贴在 (0,0)\n det_scale = (double)new_h \u002F (double)std::max(1, src.rows);\n}\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp style=\"line-height:2\">数值例子：ROI 200×500 → 640\u003C\u002Fp>\u003Cp style=\"line-height:2\">im_ratio = 500\u002F200 = 2.5 &gt; 1\u003C\u002Fp>\u003Cp style=\"line-height:2\">new_h = 640, new_w = round(640\u002F2.5) = 256\u003C\u002Fp>\u003Cp style=\"line-height:2\">det_scale = 640\u002F500 = 1.28\u003C\u002Fp>\u003Cp style=\"line-height:2\">640 画布左上 256×640 为有效图，右侧 384 列为黑。\u003C\u002Fp>\u003Cp style=\"line-height:2\">若错误地用居中 pad： 训练\u002F导出假设左上原点，框与点会系统性偏移半个 pad——典型「全往右下漂」。\u003C\u002Fp>\u003Chr \u002F>\u003Ch1 style=\"line-height:2\">四、多尺度锚点与解码公式\u003C\u002Fh1>\u003Cp style=\"line-height:2\">SCRFD 在多个 feature stride 上预测。每个位置 2 个 anchor。中心：\u003C\u002Fp>\u003Cp style=\"line-height:2\">cx = x * stride, cy = y * stride\u003C\u002Fp>\u003Cp style=\"line-height:2\">框为 距离中心的左右上下距离（distance），再乘 stride：\u003C\u002Fp>\u003Cp style=\"line-height:2\">x0 = (cx - dlstride) * inv_scale\u003C\u002Fp>\u003Cp style=\"line-height:2\">y0 = (cy - dtstride) * inv_scale\u003C\u002Fp>\u003Cp style=\"line-height:2\">x1 = (cx + drstride) * inv_scale\u003C\u002Fp>\u003Cp style=\"line-height:2\">y1 = (cy + dbstride) * inv_scale\u003C\u002Fp>\u003Cp style=\"line-height:2\">关键点同理：\u003C\u002Fp>\u003Cp style=\"line-height:2\">kx = (cx + oxstride) * inv_scale\u003C\u002Fp>\u003Cp style=\"line-height:2\">ky = (cy + oystride) * inv_scale\u003C\u002Fp>\u003Cp style=\"line-height:2\">其中\u003Cspan style=\"color:rgb(225, 60, 57)\"> inv_scale = 1\u002Fdet_scale\u003C\u002Fspan>，把网络输入坐标还原到 预处理前的图（ROI 或全图缩放图）。\u003C\u002Fp>\u003Cp style=\"line-height:2\">\u003Cspan style=\"font-size:19px\">\u003Cstrong>手算例子\u003C\u002Fstrong>\u003C\u002Fspan>\u003C\u002Fp>\u003Cp style=\"line-height:2\">\u003Cspan style=\"color:rgb(225, 60, 57)\">stride=8\u003C\u002Fspan>，特征格\u003Cspan style=\"color:rgb(225, 60, 57)\"> (x,y)=(10,20) → cx=80, cy=160。\u003C\u002Fspan>\u003C\u002Fp>\u003Cp style=\"line-height:2\">\u003Cspan style=\"color:rgb(225, 60, 57)\">dl,dt,dr,db = 2,3,2.5,4\u003C\u002Fspan>（网络输出）→ 乘 8 得 \u003Cspan style=\"color:rgb(225, 60, 57)\">16,24,20,32。\u003C\u002Fspan>\u003C\u002Fp>\u003Cp style=\"line-height:2\">\u003Cspan style=\"color:rgb(225, 60, 57)\">det_scale=0.5，inv=2\u003C\u002Fspan>：\u003C\u002Fp>\u003Cp style=\"line-height:2\">x0=(80-16)*2=128, y0=(160-24)*2=272\u003C\u002Fp>\u003Cp style=\"line-height:2\">x1=(80+20)*2=200, y1=(160+32)*2=384\u003C\u002Fp>\u003Cp style=\"line-height:2\">脸约 72×112（预处理前坐标）\u003C\u002Fp>\u003Cp style=\"line-height:2\">某关键点偏移 (\u003Cspan style=\"color:rgb(225, 60, 57)\">1.5, -0.5\u003C\u002Fspan>)：\u003C\u002Fp>\u003Cp style=\"line-height:2\">kx=(80+1.5*8)2 = 184, ky=(160-0.58)*2 = 312\u003C\u002Fp>\u003Cp style=\"text-align:center;line-height:2\">\u003Cimg src=\"https:\u002F\u002Fqu-link.oss-cn-hangzhou.aliyuncs.com\u002F2026\u002F08\u002F26\u002Ff4a87fce-505b-417b-a4fa-4dd3a4ff1e57.png\" alt=\"\" loading=\"lazy\" \u002F>\u003C\u002Fp>\u003Cp style=\"text-align:center;line-height:2\">\u003Cspan style=\"font-size:12px\">图：SCRFD 输出人脸框与五点——左眼、右眼、鼻尖、左嘴角、右嘴角；点序必须与对齐模板一致。\u003C\u002Fspan>\u003C\u002Fp>\u003Cp style=\"line-height:2\">\u003Cbr \u002F>\u003C\u002Fp>\u003Chr \u002F>\u003Ch1 style=\"line-height:2\">五、分数阈值与「能检 ≠ 能识别」\u003C\u002Fh1>\u003Cp style=\"line-height:2\">ROI 配置默认人脸分数阈值约 0.40。\u003C\u002Fp>\u003Cp style=\"line-height:2\">全图路径里常见更低阈（如 0.25～0.3）以提高召回。分层建议：\u003C\u002Fp>\u003Cp style=\"line-height:2\">\u003Cimg src=\"https:\u002F\u002Fqu-link.oss-cn-hangzhou.aliyuncs.com\u002F2026\u002F08\u002F26\u002F1f87410b-ae45-49c1-bbc3-754f28d0d4a2.png\" alt=\"\" loading=\"lazy\" \u002F>\u003C\u002Fp>\u003Cp style=\"line-height:2\">过大脸过滤：短边超过 max_face_short_ratio × min(帧宽,帧高)，或相对同伴过大（同伴倍数），多半是海报\u002F误检。\u003C\u002Fp>\u003Chr \u002F>\u003Ch1 style=\"line-height:2\">六、全图 Tile：overlap 0.25，NMS 0.45\u003C\u002Fh1>\u003Cp style=\"line-height:2\">当允许 tile 且分辨率够大时，走滑窗人脸检测：\u003C\u002Fp>\u003Cp style=\"line-height:2\">与人体 Tile 的差异：\u003C\u002Fp>\u003Cul>\u003Cli style=\"line-height:2\">门槛同样约 1280×720，但 4 格阈是 2400×1350（不是 3840）；\u003C\u002Fli>\u003Cli style=\"line-height:2\">tile 保持矩形（按 base 各向 ×1.25），不强制正方形；\u003C\u002Fli>\u003Cli style=\"line-height:2\">最小块 160（人体侧常 320）；\u003C\u002Fli>\u003Cli style=\"line-height:2\">框与 每个关键点 都要加 ROI 原点。\u003C\u002Fli>\u003C\u002Ful>\u003Cp style=\"line-height:2\">合并策略：\u003C\u002Fp>\u003Col>\u003Cli style=\"line-height:2\">先对缩小后的全图跑一次 SCRFD；\u003C\u002Fli>\u003Cli style=\"line-height:2\">若失败或空 → 直接 tile；\u003C\u002Fli>\u003Cli style=\"line-height:2\">若只找到 ≤1 张脸且图够大 → 补充 tile，再与原结果合并，nms_dets_inplace(merged, 0.40)。\u003C\u002Fli>\u003C\u002Fol>\u003Cp style=\"line-height:2\">人脸 NMS 的排序键是 score × area（不是纯 score）：\u003C\u002Fp>\u003Cp style=\"line-height:2\">偏好「又准又大」的脸，有利于丢掉碎小重复框。\u003C\u002Fp>\u003Chr \u002F>\u003Ch1 style=\"line-height:2\">七、坐标系叠层：最易踩的坑\u003C\u002Fh1>\u003Cp style=\"line-height:2\">一张脸可能经历多层变换：\u003C\u002Fp>\u003Cp style=\"line-height:2\">原图\u003C\u002Fp>\u003Cp style=\"line-height:2\">→（可选）全图 downscale，记录 sc\u003C\u002Fp>\u003Cp style=\"line-height:2\">→（可选）人体 ROI 裁切，原点 (rx,ry)\u003C\u002Fp>\u003Cp style=\"line-height:2\">→ 网络输出\u003C\u002Fp>\u003Cp style=\"line-height:2\">→ × inv_scale 回到 pad 前图\u003C\u002Fp>\u003Cp style=\"line-height:2\">→ + (rx,ry) 回到 downscale 图或原图\u003C\u002Fp>\u003Cp style=\"line-height:2\">→ × (1\u002Fsc) 回到原图\u003C\u002Fp>\u003Cp style=\"text-align:center;line-height:2\">\u003Cimg src=\"https:\u002F\u002Fqu-link.oss-cn-hangzhou.aliyuncs.com\u002F2026\u002F08\u002F26\u002Fff9503bb-b582-4203-b303-1685d111b3e0.png\" alt=\"\" loading=\"lazy\" \u002F>\u003C\u002Fp>\u003Cp style=\"text-align:center;line-height:2\">\u003Cspan style=\"font-size:12px\">图：人脸框与五点必须共用同一套逆变换；少加一次 ROI 原点或漏除 downscale，点会漂出五官。\u003C\u002Fspan>\u003C\u002Fp>\u003Cp style=\"line-height:2\">在全图路径上，downscale 与 tile ROI 原点都要与五点同步回加。\u003C\u002Fp>\u003Cp style=\"line-height:2\">调试口诀：\u003C\u002Fp>\u003Col>\u003Cli style=\"line-height:2\">在送进 SCRFD 的那张图上画框点 → 已偏：解码\u002Fpad；\u003C\u002Fli>\u003Cli style=\"line-height:2\">该图对、拼回原图偏 → ROI 或 downscale；\u003C\u002Fli>\u003Cli style=\"line-height:2\">框对点飘 → 只修了 box 忘了 kps。\u003C\u002Fli>\u003C\u002Fol>\u003Chr \u002F>\u003Ch1 style=\"line-height:2\">八、关键点质量门禁（检测出口就该做）\u003C\u002Fh1>\u003Cp style=\"line-height:2\">送去对齐前建议丢掉：\u003C\u002Fp>\u003Cul>\u003Cli style=\"line-height:2\">分数过低且面积过小；\u003C\u002Fli>\u003Cli style=\"line-height:2\">两眼距离 ≈0 或左右交叉；\u003C\u002Fli>\u003Cli style=\"line-height:2\">五点大量落在脸框外；\u003C\u002Fli>\u003Cli style=\"line-height:2\">明显贴 ROI 边的半张脸（除非业务强制半脸尝试）。\u003C\u002Fli>\u003C\u002Ful>\u003Cp style=\"line-height:2\">目测：\u003C\u002Fp>\u003Col>\u003Cli style=\"line-height:2\">正脸时两眼连线近似水平；\u003C\u002Fli>\u003Cli style=\"line-height:2\">鼻尖在两眼中点偏下；\u003C\u002Fli>\u003Cli style=\"line-height:2\">嘴角大致对称且间距小于眼距；\u003C\u002Fli>\u003Cli style=\"line-height:2\">五点整体落在框内。\u003C\u002Fli>\u003C\u002Fol>\u003Cp style=\"line-height:2\">侧脸大角度、口罩、墨镜、手遮嘴：框可能仍在，点不可信——应让上层降权，而不是硬对齐。\u003C\u002Fp>\u003Chr \u002F>\u003Ch1 style=\"line-height:2\">九、 多人脸消歧：谁才是这具身体上的脸\u003C\u002Fh1>\u003Cp style=\"line-height:2\">一个人体 ROI 内可能出现主人脸、邻人探入、海报、镜面。启发式：\u003C\u002Fp>\u003Cp style=\"line-height:2\">选分数最高且面积合理者；\u003C\u002Fp>\u003Cul>\u003Cli style=\"line-height:2\">中心更靠人体框 上半部；\u003C\u002Fli>\u003Cli style=\"line-height:2\">排除中心落在下半身者；\u003C\u002Fli>\u003Cli style=\"line-height:2\">已有轨迹时选靠近预测脸位者；\u003C\u002Fli>\u003Cli style=\"line-height:2\">面积异常大且贴边 → 警惕海报。\u003C\u002Fli>\u003C\u002Ful>\u003Cp style=\"line-height:2\">人脸与人体轨迹匹配：脸心在人体框内且 IoU 最大（阈值约 0.05）。消歧错了，对齐和识别会非常自信地错——比检不出更难查。\u003C\u002Fp>\u003Chr \u002F>\u003Ch1 style=\"line-height:2\">十、姿态、遮挡与分数\u003C\u002Fh1>\u003Cp style=\"text-align:center;line-height:2\">\u003Cimg src=\"https:\u002F\u002Fqu-link.oss-cn-hangzhou.aliyuncs.com\u002F2026\u002F08\u002F26\u002F1f7669c1-abb3-4698-8f39-0bdc08ed0801.png\" alt=\"\" loading=\"lazy\" \u002F>\u003C\u002Fp>\u003Chr \u002F>\u003Ch1 style=\"line-height:2\">十一、 Batch ROI：性能与正确性\u003C\u002Fh1>\u003Cp style=\"line-height:2\">优先动态 batch：多人 ROI 一次 Run。注意：\u003C\u002Fp>\u003Cul>\u003Cli style=\"line-height:2\">每张 ROI 的检测缩放 \u002F pad 信息必须分条保存；\u003C\u002Fli>\u003Cli style=\"line-height:2\">空或过小 ROI 不要占位；\u003C\u002Fli>\u003Cli style=\"line-height:2\">batch 失败时有串行回退；GPU 路径失败可能直接告警返回。\u003C\u002Fli>\u003C\u002Ful>\u003Cp style=\"line-height:2\">批处理是性能优化，不是正确性来源：先保证单 ROI 框点正确，再拼 batch。\u003C\u002Fp>\u003Chr \u002F>\u003Ch1 style=\"line-height:2\">十二、轻量回退 YuNet\u003C\u002Fh1>\u003Cp style=\"line-height:2\">加载时若 SCRFD 权重不可用，可走 YuNet（输入 320）。回退精度通常较差，但输出契约仍是框+点+分。必须确认关键点索引与 SCRFD 一致，否则对齐模板错位。\u003C\u002Fp>\u003Chr \u002F>\u003Ch1 style=\"line-height:2\">十三、完整几何例子：人体框 → 全图五点\u003C\u002Fh1>\u003Cp style=\"line-height:2\">人体框\u003Cspan style=\"color:rgb(225, 60, 57)\"> (800,200)-(1000,700)\u003C\u002Fspan>，即\u003Cspan style=\"color:rgb(225, 60, 57)\"> 200×500\u003C\u002Fspan>。clamp 后作为 ROI，原点\u003Cspan style=\"color:rgb(225, 60, 57)\"> (800,200)\u003C\u002Fspan>。\u003C\u002Fp>\u003Cp style=\"line-height:2\">ROI 内 SCRFD（经左上 pad）得到相对 ROI：\u003C\u002Fp>\u003Cp style=\"line-height:2\">face box: (40, 30, 60, 70)\u003C\u002Fp>\u003Cp style=\"line-height:2\">kps[0] 左眼: (55, 48)\u003C\u002Fp>\u003Cp style=\"line-height:2\">回到全图：\u003C\u002Fp>\u003Cp style=\"line-height:2\">box → (840, 230, 60, 70)\u003C\u002Fp>\u003Cp style=\"line-height:2\">左眼 → (855, 248)\u003C\u002Fp>\u003Cp style=\"line-height:2\">若此前全图曾 ×0.5 downscale，还要再 ×2。少一步，鼻尖会落到脸颊外，Umeyama 残差爆炸。\u003C\u002Fp>\u003Chr \u002F>\u003Ch1 style=\"line-height:2\">十四、时序：让脸别抖\u003C\u002Fh1>\u003Cp style=\"line-height:2\">单帧框点有噪声。对同一 track：\u003C\u002Fp>\u003Cp style=\"line-height:2\">短窗指数平滑脸框；\u003C\u002Fp>\u003Cp style=\"line-height:2\">五点平滑时防止左右眼交叉——可先平滑框再约束点；\u003C\u002Fp>\u003Cp style=\"line-height:2\">遮挡刚结束几帧降低平滑，让新观测快速纠正。\u003C\u002Fp>\u003Cp style=\"line-height:2\">平滑改善的是识别分数的时间稳定性，不是 mAP。\u003C\u002Fp>\u003Chr \u002F>\u003Ch1 style=\"line-height:2\">十五、白天\u002F夜间阈值\u003C\u002Fh1>\u003Cp style=\"line-height:2\">\u003Cimg src=\"https:\u002F\u002Fqu-link.oss-cn-hangzhou.aliyuncs.com\u002F2026\u002F08\u002F26\u002F76c787f0-e9f9-42e1-a4cb-2d5e737cd02c.png\" alt=\"\" loading=\"lazy\" \u002F>\u003C\u002Fp>\u003Chr \u002F>\u003Ch1 style=\"line-height:2\">十六、与对齐模块的交接契约\u003C\u002Fh1>\u003Cp style=\"line-height:2\">检测交给对齐的最小字段：\u003C\u002Fp>\u003Cul>\u003Cli style=\"line-height:2\">原图像素系脸框；\u003C\u002Fli>\u003Cli style=\"line-height:2\">原图像素系五点（含顺序说明）；\u003C\u002Fli>\u003Cli style=\"line-height:2\">检测分数；\u003C\u002Fli>\u003Cli style=\"line-height:2\">可选：短边、粗姿态（两眼距\u002F脸宽）。\u003C\u002Fli>\u003C\u002Ful>\u003Cp style=\"line-height:2\">对齐侧不应猜测「是否 mirror 」；契约稳定，联调成本下降一个数量级。\u003C\u002Fp>\u003Chr \u002F>\u003Ch1 style=\"line-height:2\">十七、常见问题清单\u003C\u002Fh1>\u003Cp style=\"text-align:center;line-height:2\">\u003Cimg src=\"https:\u002F\u002Fqu-link.oss-cn-hangzhou.aliyuncs.com\u002F2026\u002F08\u002F26\u002F940a4589-711a-41c5-922f-b1f6b9a7b6f1.png\" alt=\"\" loading=\"lazy\" \u002F>\u003C\u002Fp>\u003Chr \u002F>\u003Ch1 style=\"line-height:2\">十八、参数直觉表\u003C\u002Fh1>\u003Cp style=\"line-height:2\">\u003Cimg src=\"https:\u002F\u002Fqu-link.oss-cn-hangzhou.aliyuncs.com\u002F2026\u002F08\u002F26\u002Ff7bf99ca-3dbd-4e68-93f9-f83c810a0c28.png\" alt=\"\" loading=\"lazy\" \u002F>\u003C\u002Fp>\u003Chr \u002F>\u003Ch1 style=\"line-height:2\">十九、为何五点比框「更值钱」\u003C\u002Fh1>\u003Cp style=\"line-height:2\">同样侧脸：框与分数可能仍好看，但点落在脸颊时，相似变换会把五官拧到怪位置，embedding 漂，相似度断崖。工程质量应双线：\u003C\u002Fp>\u003Cul>\u003Cli style=\"line-height:2\">检测召回：有没有框；\u003C\u002Fli>\u003Cli style=\"line-height:2\">关键点质量：点是否在五官上（可视化抽检）。\u003C\u002Fli>\u003C\u002Ful>\u003Cp style=\"line-height:2\">只盯检测 mAP、不看点，会出现「检测指标好看、识别却不稳」的假象。\u003C\u002Fp>","https:\u002F\u002Fqu-link.oss-cn-hangzhou.aliyuncs.com\u002F2026\u002F08\u002F26\u002F3352d746-40a5-4f18-9dff-a9b7424dc8bd.jpg","84,85","美畅，美畅物联，畅联，畅联云平台，视频监控云平台，云视频监控，视频云平台，视频开放平台，视频感知云，视频接入网关，AIoT综合接入网关，视频中台，物联网中台，视频上云网关，Ehome，I连锁行业，智慧交通，AI算法","原创技术分享丨美畅物联向工","https:\u002F\u002Fwww.24hlink.cn\u002Ftech\u002F2576","2026-08-26 14:18:19","864"]