项目预览
项目数据
项目介绍
Star 增长趋势
本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整
数据来源:GitHub API 逐日快照 · 收录于 2026-08-10 · 当前星标 ★ 14472
使用教程
ℹ 本教程由 AI 依据该项目 README 整理,个别步骤可能需要按你的环境微调。
环境要求
- CMake 构建工具(用于配置和编译)
- 支持 C++ 的编译器(如 GCC、Clang 或 Visual Studio)
- Git(用于获取仓库源码)
- Windows 用户建议使用 Visual Studio 并在 64 位模式下编译
安装与启动步骤
-
1克隆 dlib 仓库
从 GitHub 拉取源码,README 未给出安装包,统一通过源码编译。网络慢时可先配置代理。
git clone https://github.com/davisking/dlib.git -
2配置示例工程
进入 examples 目录,新建 build 子目录并执行 cmake .. 生成构建文件。构建文件必须生成在 build 目录内。
cd dlib/examples mkdir build cd build cmake .. -
3编译全部示例
在 build 目录中执行 cmake --build .,会把 examples 下的所有示例程序编译成可执行文件。
cmake --build . -
4开启 AVX 加速
若 CPU 支持 AVX 指令,重新配置并编译可让部分功能跑得更快。需在 build 目录内重新执行一次 cmake。
cmake .. -DUSE_AVX_INSTRUCTIONS=1 cmake --build . -
5Windows 64 位配置
Visual Studio 默认 32 位,需显式指定 Win64 生成器与 host=x64,否则可能出现链接或性能问题。
cmake .. -G "Visual Studio 14 2015 Win64" -T host=x64 -
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
同类项目推荐
ComfyUI-BiRefNet-ZHO
开源
拖拽节点即可实现图像/视频高精度抠图,边缘细节惊艳
Better version for BiRefNet in ComfyUI | Both img & video
Occular-ocr
开源
俄语文档扫描件一键转文字,快且准
Fast and accurate OCR for Russian documents
deepdoctection
开源
一行代码搭建文档解析流水线,快速提取版面、表格与文本。
A Repo For Document AI
yolov5
开源
用 PyTorch 快速训练和部署目标检测模型,开箱即用。
Ultralytics YOLOv5 in PyTorch for object detection, instance segmentation, classific···
surya
开源
多语言文档一键 OCR,版面表格阅读顺序全搞定
OCR, layout analysis, reading order, table recognition in 90+ languages
BoofCV
开源
纯 Java 视觉库,Android 上跑标定、跟踪和三维重建
Fast computer vision library for SFM, calibration, fiducials, tracking, image proce···
groundingLMM
开源
让AI边聊边精准圈出图像中的每个物体
[CVPR 2024 ] Grounding Large Multimodal Model (GLaMM), the first-of-its-kind model c···
ovam
开源
用扩散模型生成精准的开放词汇语义分割图
Code for the paper Open-Vocabulary Attention Maps with Token Optimization for Semant···
SLiMe
开源
一张示例图,让Stable Diffusion学会分割任意目标
1-shot image segmentation using Stable Diffusion
