ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

InsightFace 人脸检测与人脸识别:326MB 模型包、一图 6 人,4 行代码拿到同人判定

2026/9/9 17:07:15 拓冰建站 浏览量
InsightFace 人脸检测与人脸识别:326MB 模型包、一图 6 人,4 行代码拿到同人判定 InsightFace 人脸检测与人脸识别326MB 模型包、一图 6 人4 行代码拿到同人判定【免费下载链接】insightfaceState-of-the-art 2D and 3D Face Analysis Project项目地址: https://gitcode.com/GitHub_Trending/in/insightfaceInsightFace 是一个开源的 2D/3D 人脸分析工具箱把人脸检测、人脸识别、关键点标定和属性分析打包成了可直接安装的 Python 库。你只需要两条 pip 命令调用一次FaceAnalysis几分钟内就能在本地跑通人脸比对 Demo——不用自己训练模型预训练模型会自动下载。跑起来能看到什么6 张脸、关键点与每人的数字指纹仓库自带的示例图t1.jpg里有 6 个人代码直接断言检测数量等于 6。一次app.get(img)调用后每张脸会得到一个 Face 对象里面包含边界框bbox和检测置信度5 点关键点眼睛、鼻子、嘴角位置性别与年龄属性人脸识别用的特征向量可以理解为这张脸的数字指纹比对两张照片是不是同一个人就是比这两个向量。把结果传给app.draw_on(img, faces)还能直接在图上画出检测框、关键点和性别年龄文字。下面这张图展示的是同一条检测链路在不同场景下的输出人脸定位框、106 点关键点、性别年龄标注以及模糊、活体判断等结果。InsightFace 安装步骤两条 pip 命令CPU 就能跑从 insightface 0.2 版开始推理后端是 onnxruntime基于 ONNX 格式的通用推理引擎。CPU 装onnxruntime即可仓库自带示例图片克隆下来就能用git clone https://gitcode.com/GitHub_Trending/in/insightface pip install -U onnxruntime # CPU 版GPU 请装 onnxruntime-gpu pip install -U insightface最小可运行脚本在仓库根目录执行import cv2, numpy as np from insightface.app import FaceAnalysis app FaceAnalysis(namebuffalo_l) app.prepare(ctx_id-1) # -1 为 CPUGPU 用 0 faces app.get(cv2.imread(python-package/insightface/data/images/t1.jpg)) print(len(faces), faces[0].gender, faces[0].age) # 6 人含性别/年龄 emb1, emb2 faces[0].embedding, faces[1].embedding print(np.dot(emb1, emb2) / (np.linalg.norm(emb1) * np.linalg.norm(emb2))) # 与 0.65 比较首次运行会把默认的 buffalo_l 模型包约 326MB自动下载到~/.insightface/models/。最后一行输出的就是两张脸的余弦相似度同一人通常显著高于 0.65不同人则明显更低。人脸识别模型包怎么选16MB 到 407MB 的 5 个档位模型包是检测 识别 对齐 属性模型的组合体积和精度随档位变化。以下数据来自 python-package/README.md名称检测模型识别模型体积自动下载antelopev2SCRFD-10GFResNet100Glint360K407MB否buffalo_l默认SCRFD-10GFResNet50WebFace600K326MB是buffalo_mSCRFD-2.5GFResNet50WebFace600K313MB否buffalo_sSCRFD-500MFMBFWebFace600K159MB否buffalo_scSCRFD-500MFMBFWebFace600K16MB否前四档都带 106 点/68 点关键点对齐和性别年龄属性buffalo_sc只有检测 识别是最小集。识别精度对比官方公布值出处同上模型包MR-ALLLFWCFP-FPAgeDB-30IJB-C(E4)buffalo_l91.2599.8399.3398.2397.25buffalo_s71.8799.7098.0096.5895.02结论很直接普通场景用默认buffalo_l即可算力受限或端侧部署选buffalo_s只要检测识别、不关心对齐属性16MB 的buffalo_sc最省。SCRFD 人脸检测精度与速度官方 benchmark 怎么说SCRFD 是仓库主推的检测器ICLR-2022 论文方法全称 Sample and Computation Redistribution for Efficient Face Detection核心思路是把采样和计算重新分布小脸大脸都能接住。下表为 VGA640×480分辨率单尺度测试的官方数据出处 detection/scrfd/README.md模型Easy (mAP)Medium (mAP)Hard (mAP)参数量 (M)推理耗时 (ms)SCRFD-0.5GF90.5788.1268.510.573.6SCRFD-2.5GF93.7892.1677.870.674.2SCRFD-10GF95.1693.8783.053.864.9SCRFD-34GF96.0694.9285.299.8011.7两个值得注意的对比同算力的 ResNet-10GF 基线是 94.69 / 92.90 / 80.42、耗时 6.3msSCRFD-10GF 三项难度全部更高且更快最轻的 SCRFD-0.5GF 在单线程 CPUAMD Ryzen 9 3950X上 640×480 输入也只要 28.3msHard 集 mAP 仍有 68.51端侧实时可用。1:1 同人比对阈值 0.65 怎么调仓库示例 examples/face_recognition/insightface_app.py 的默认阈值是 0.65计算方式是两张脸 embedding 向量的余弦相似度超过阈值判同一人。示例代码里也写明Adjust this threshold according to your usecase。阈值调低更容易判成同一人误认把不同人认成同一人变多阈值调高更保守漏认把同一人判成不同人变多。没有跨场景通用的最优值建议从自己业务里的真实坏例入手先跑一批该拒没拒和该过没过的样本看相似度分布再定线。另外注意GUI 里相册聚类功能默认用的是 0.48 的余弦阈值DBSCAN 聚类见 python-package/README.md——同一指标、不同任务阈值完全不同直接照搬数字没有意义。常见踩坑 5 条GPU 装了不生效onnxruntime只含 CPU 推理。要跑 CUDA 需单独安装onnxruntime-gpu并在初始化时指定providers[CUDAExecutionProvider]示例代码里有现成写法。一图多人比错了脸app.get(img)返回的顺序是检测顺序faces[0]只是第一张检出的脸不一定是你想比的那张。多图人脸场景要按face.bbox位置或面积自行筛选。小脸漏检v1.0 起prepare()默认用 Auto 双尺寸检测128×128 和 640×640 各跑一遍再统一 NMS 合并见 face_analysis.py。如果你手动把det_size固定成单一大尺寸小脸就会漏掉。自动下载失败网络不通时模型拉不下来可手动下载 zip 包解压到~/.insightface/models/再运行python-package/README.md 有说明训练/推理代码在训练侧基于 PyTorch 1.6 或 MXNet 1.6~1.8。License 边界要看清代码本身是 MIT 协议学术和商用都没有限制但附带的预训练模型buffalo 系列等仅限非商业研究用途商用需另行获取授权README.md 里写得很明确。仓库关键路径接下来可以往哪走检测训练与评测SCRFD 训练代码、WIDERFace 数据准备、转 ONNXdetection/scrfd/识别训练ArcFace 的 PyTorch/MXNet/Paddle 多实现、Partial FCrecognition/人脸交换一行代码示例inswapper就是那个断言 6 张脸的 Demoexamples/in_swapper/完整模型清单与精度表model_zoo/README.md想自建人脸搜索服务容器化 Web UI REST APIserver/3D 重建、视线估计等进阶方向reconstruction/跑通 buffalo_l 之后最自然的下一步是换任务验证同一套 pipeline先拿 examples/face_recognition/insightface_app.py 换成自己的照片对用真实样本把 0.65 这条线调成你业务的线。再往后是沿着 SCRFD 训练代码做检测器精调还是往 3D 重建方向走取决于你的数据里有没有对应的需求。✨【免费下载链接】insightfaceState-of-the-art 2D and 3D Face Analysis Project项目地址: https://gitcode.com/GitHub_Trending/in/insightface创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考