dlib

C++ 写机器学习,人脸检测和训练模型一把梭

开源 🏷️完全免费 🔧 仅开源项目,无在线服务,需自行部署 计算机视觉 🍴 复刻 3438 🐛 待处理 39 👀 关注 465
访问官网 ↗ GitHub ↗
GitHub 星标 ★ 14472
维护状态 活跃
是否开源 开源
定价模式 🏷️完全免费 开源库,完全免费,可自行部署使用。

项目预览

dlib 项目界面预览图
图片来源:项目官网

项目数据

分类计算机视觉
开发团队davisking
官网地址http://dlib.net
定价模式🏷️完全免费
价格说明开源库,完全免费,可自行部署使用。
访问状态🔧 仅开源项目,无在线服务,需自行部署
是否开源是
开源协议BSL-1.0
主要语言C++
技术栈/模型c-plus-plus,computer-vision,deep-learning,dlib,machine-learning,machine-learning-library,python
GitHub 星标★ 14472
上线时间2014-01-29 00:00:00
代码更新2026-11-07
仓库体积50.5 MB
本站数据更新2026-11-09
维护状态活跃
收录时间2026-08-10
浏览次数6

项目介绍

dlib 是一个用 C++ 编写的现代机器学习工具包,旨在帮助开发者构建真实世界的机器学习和数据分析应用。它解决了从算法原型到产品部署过程中的工程化难题,提供了丰富的算法模块,包括支持向量机、决策树、深度学习(特别是卷积神经网络)、聚类、图模型等。其核心能力包括:高性能的计算机视觉组件(如人脸检测、人脸关键点标定、目标跟踪)、优化的数值计算库(矩阵运算、随机数生成)、以及线程和网络通信等实用工具。dlib 强调代码的简洁性和可移植性,支持跨平台运行,并提供 Python 接口,方便快速集成。它拥有详尽的文档和示例,适合学术研究和工业应用。

Star 增长趋势

本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整

数据来源:GitHub API 逐日快照 · 收录于 2026-08-10 · 当前星标 ★ 14472

使用教程

ℹ 本教程由 AI 依据该项目 README 整理,个别步骤可能需要按你的环境微调。

难度:进阶 约 20 分钟 部署方式:库/依赖 6 步

环境要求

  • CMake 构建工具(用于配置和编译)
  • 支持 C++ 的编译器(如 GCC、Clang 或 Visual Studio)
  • Git(用于获取仓库源码)
  • Windows 用户建议使用 Visual Studio 并在 64 位模式下编译

安装与启动步骤

  1. 1克隆 dlib 仓库

    从 GitHub 拉取源码,README 未给出安装包,统一通过源码编译。网络慢时可先配置代理。

    git clone https://github.com/davisking/dlib.git
  2. 2配置示例工程

    进入 examples 目录,新建 build 子目录并执行 cmake .. 生成构建文件。构建文件必须生成在 build 目录内。

    cd dlib/examples
    mkdir build
    cd build
    cmake ..
  3. 3编译全部示例

    在 build 目录中执行 cmake --build .,会把 examples 下的所有示例程序编译成可执行文件。

    cmake --build .
  4. 4开启 AVX 加速

    若 CPU 支持 AVX 指令,重新配置并编译可让部分功能跑得更快。需在 build 目录内重新执行一次 cmake。

    cmake .. -DUSE_AVX_INSTRUCTIONS=1
    cmake --build .
  5. 5Windows 64 位配置

    Visual Studio 默认 32 位,需显式指定 Win64 生成器与 host=x64,否则可能出现链接或性能问题。

    cmake .. -G "Visual Studio 14 2015 Win64" -T host=x64
  6. 6运行单元测试

    进入 dlib/test 目录编译测试套件并执行 --runall 跑全部测试。Windows 下测试程序可能在 Release 子目录。

    cd dlib/test
    mkdir build
    cd build
    cmake ..
    cmake --build . --config Release
    ./dtest --runall

关键配置

配置项必填说明示例
USE_AVX_INSTRUCTIONS否开启 AVX 指令优化,让部分计算更快1
-G "Visual Studio 14 2015 Win64"否Windows 下指定 64 位 Visual Studio 生成器Visual Studio 14 2015 Win64
-T host=x64否指定使用 64 位编译工具链host=x64
--config Release否Windows 多配置生成器下指定 Release 构建类型Release

如何确认成功

示例目录 build 下生成可执行文件即编译成功;运行 dtest --runall 全部用例通过则单元测试成功。

常见问题

Q:怎么让自己写的 C++ 程序使用 dlib?

A:README 指出 examples 文件夹中提供了 CMake 教程,可参考它把 dlib 集成进自己的 CMake 工程。

Q:编译出来的示例程序找不到?

A:Windows 上编译器可能把可执行文件放进名为 Release 的子文件夹,需要先进入该文件夹再运行。

Q:为什么 Visual Studio 下要特别配置?

A:Visual Studio 默认是 32 位的,包括输出和自身运行,需通过 Win64 生成器和 -T host=x64 显式切到 64 位。

Q:怎么让 dlib 跑得更快?

A:如果 CPU 支持 AVX 指令,用 -DUSE_AVX_INSTRUCTIONS=1 重新配置并编译,部分功能会更快。

Q:可以商用吗?

A:可以。dlib 采用 Boost Software License,可自由使用,包括闭源商业软件,详见 LICENSE.txt。

注意事项

  • README 节选只包含 C++ 编译说明,未给出 Python 绑定的安装命令,需要 Python 接口请查阅官网 dlib.net。
  • 示例编译耗时较长,建议在 build 子目录内构建,避免污染源码目录。
  • 运行单元测试前必须按 README 步骤先用 --config Release 完成编译。
  • 许可证为 Boost Software License,允许闭源商用,保留许可证文件即可。

核心亮点

  • 人脸检测和关键点标定精度高,且提供预训练模型,开箱即用
  • C++ 实现性能优异,同时提供 Python API,兼顾效率与易用性
  • 文档和示例非常详尽,上手门槛低,社区活跃

不足之处

  • 构建和安装依赖较多,编译时间较长
  • 深度学习功能相比 PyTorch/TensorFlow 生态,灵活性和社区资源较少

适用场景

  • 人脸识别与表情分析等计算机视觉应用开发
  • 嵌入式或移动端部署机器学习模型
  • 需要高性能 SVM 或决策树等传统机器学习算法的场景

替代项目

OpenCV、scikit-learn、PyTorch

上一篇:vision

下一篇:Meshroom

同类项目推荐

ComfyUI-BiRefNet-ZHO 开源

拖拽节点即可实现图像/视频高精度抠图,边缘细节惊艳

Better version for BiRefNet in ComfyUI | Both img & video

★ 414 2026-08-09
Occular-ocr 开源

俄语文档扫描件一键转文字,快且准

Fast and accurate OCR for Russian documents

★ 75 2026-10-18
deepdoctection 开源

一行代码搭建文档解析流水线,快速提取版面、表格与文本。

A Repo For Document AI

★ 3269 2026-08-10
yolov5 开源

用 PyTorch 快速训练和部署目标检测模型,开箱即用。

Ultralytics YOLOv5 in PyTorch for object detection, instance segmentation, classific···

★ 58254 2026-08-10
surya 开源

多语言文档一键 OCR,版面表格阅读顺序全搞定

OCR, layout analysis, reading order, table recognition in 90+ languages

★ 21585 2026-09-19
BoofCV 开源

纯 Java 视觉库,Android 上跑标定、跟踪和三维重建

Fast computer vision library for SFM, calibration, fiducials, tracking, image proce···

★ 1206 2026-09-18
groundingLMM 开源

让AI边聊边精准圈出图像中的每个物体

[CVPR 2024 ] Grounding Large Multimodal Model (GLaMM), the first-of-its-kind model c···

★ 969 2026-08-09
ovam 开源

用扩散模型生成精准的开放词汇语义分割图

Code for the paper Open-Vocabulary Attention Maps with Token Optimization for Semant···

★ 70 2026-08-09
SLiMe 开源

一张示例图,让Stable Diffusion学会分割任意目标

1-shot image segmentation using Stable Diffusion

★ 142 2026-08-09