全面横扫:dlib Python API在Linux和Windows的配置方案
前言
在计算机视觉和人工智能领域,dlib是一个备受推崇的工具库。它为开发者提供了强大的图像处理、机器学习和深度学习功能。在计算机视觉项目中,配置dlib Python API是一个重要的初始步骤。本文将引导读者详细了解在Linux和Windows系统上安装和配置dlib Python API的过程。
文章目录
- 前言
- 在Linux和Windows系统上配置dlib Python API
- dlib简介
- 为什么选择dlib
- dlib官网及下载源
- 运行环境配置
- Windows
- Linux
- 总结
- 下一步计划
在Linux和Windows系统上配置dlib Python API
dlib简介
dlib是一个C++编写的跨平台机器学习工具库,它广泛用于图像处理、人脸识别、物体检测等任务。dlib的Python接口使得开发者可以在Python环境中轻松使用其强大功能。它不仅在性能上表现出色,而且还提供了许多预训练模型和实用工具,使其成为计算机视觉项目的首选之一。
为什么选择dlib
在选择计算机视觉和人工智能工具库时,开发者通常会考虑性能、稳定性和功能丰富程度。以下是选择dlib的一些理由:
-
强大的功能:dlib提供了丰富的图像处理、特征检测和机器学习工具,可以应用于多种应用领域。
-
跨平台支持:dlib可以在Linux和Windows等多个操作系统上运行,确保了项目的可移植性。
-
开源社区支持:dlib拥有庞大的开源社区,意味着有大量的文档和示例代码可供参考。
-
性能卓越:dlib经过优化,具有出色的性能,适用于高效的实时应用。
-
dlib的优势
- 代码质量高,Documentation完善
- 包含大量预训练模型,使模型直接可用
- 支持C++和Python开发
- 兼容Windows和Linux系统
-
dlib的Python API
dlib为Python提供了API接口,可以在Python程序中调用dlib的功能和模型。dlib的Python API包含了人脸检测、面部 landmark 检测、人脸识别等功能。
dlib官网及下载源
官方GitHub连接
dlib
dlib-models
如果你能通过pip安装dlib,也许你不会点开这篇文章
pip install dilb
我们往往会遇到各种报错,你可以在以下两个网站下载你需要的版本进行下载
豆瓣pypi源

dlib官网源

常用dat
shape_predictor_68_face_landmarks.dat
来源于davisking/dlib-models
你也可以在上面的dlib官网源找到他
运行环境配置
运行环境配置及打包方式基于
半自动化使用.bat手动打包迁移python项目
- Python 3.8
- dlib
什么是Python虚拟环境
Python虚拟环境可以为一个应用创建一个独立的Python运行环境,包含独立的Python解释器、库和脚本。
为何需要虚拟环境
- 隔离应用程序所需要的库,避免版本冲突
- 可以安装不同版本的库到不同虚拟环境
- 可以复用虚拟环境,提高开发效率
创建和管理虚拟环境的常用工具
- virtualenv:Python标准库中的虚拟环境工具
- conda:Anaconda发行版提供的虚拟环境管理工具
- pipenv:依赖管理和虚拟环境管理工具
使用虚拟环境的基本步骤
- 创建虚拟环境
- 激活虚拟环境
- 在虚拟环境中安装需要的库
- 在虚拟环境中运行Python应用程序
- 停用或删除不需要的虚拟环境
使用虚拟环境可以避免在配置dlib时遇到依赖库版本冲突等问题。
Windows
豆瓣pypi源只有py36以及之前版本的dlib,目前Windows上没有特别好的解决方法,我们必须下载到对应python版本的dlib.whl
你可以关注我然后回复我dlib获取
dlib
我搜集了python3.7-3.9各种版本的dlib安装包
dlib-19.17.99-cp37-cp37m-win_amd64.whl
dlib-19.24.2-cp37-cp37m-win_amd64.whl
dlib-19.19.0-cp38-cp38-win_amd64.whl
dlib-19.21.99-cp38-cp38-win_amd64.whl
dlib-19.22.99-cp39-cp39-win_amd64.whl
这里我们使用dlib-19.19.0-cp38-cp38-win_amd64.whl测试
rem 创建虚拟环境
python -m venv venv
call venv\Scripts\activate.bat
python -m pip install -i https://mirrors.aliyun.com/pypi/simple/ --upgrade pip setuptools
pip install dlib-19.19.0-cp38-cp38-win_amd64.whl

我还要用到opencv,torch等库
pip install -i https://mirrors.aliyun.com/pypi/simple/ opencv-python==4.5.3.56
pip install torch==1.7.1+cu110 torchvision==0.8.2+cu110 torchaudio==0.7.2 -f https://download.pytorch.org/whl/torch_stable.html
Linux
Linux配置较简单,这里我们同样通过创建虚拟环境实现一个干净的新环境进行测试
python -m venv venv
source venv/bin/activate
python -m pip install -i https://mirrors.aliyun.com/pypi/simple/ --upgrade pip setuptools
pip download dlib==19.19.0
pip install dlib-19.19.0.tar.gz
你可以选择在
dlib官网源
直接下载得到例如dlib-19.19.0.tar.gz或其他版本的dlib然后
pip install dlib-19.19.0.tar.gz
你也可以
pip download dlib==19.19.0
pip install dlib-19.19.0.tar.gz
即可安装成功

总结
通过本文的指导,读者将能够轻松地在Linux和Windows系统上配置dlib Python API,为他们的计算机视觉和人工智能项目提供强大的支持。在配置过程中,注意选择适合自己Python版本的dlib安装包,并遵循所提供的步骤,即可顺利完成配置。希望本文能够帮助读者节省时间和精力,让你更专注于项目的开发和研究工作。
下一步计划
在下一篇文章中,我们将探究如何结合dlib、OpenCV和Torch实现活体检测,并解决在使用虚拟机摄像头时可能遇到的问题。敬请期待
相关文章:
全面横扫:dlib Python API在Linux和Windows的配置方案
前言 在计算机视觉和人工智能领域,dlib是一个备受推崇的工具库。它为开发者提供了强大的图像处理、机器学习和深度学习功能。在计算机视觉项目中,配置dlib Python API是一个重要的初始步骤。本文将引导读者详细了解在Linux和Windows系统上安装和配置dli…...
30种编程语言写国庆节快乐,收藏后改改留着拜年用
文章目录 核心代码版多行代码单行代码 核心代码版 Python:print(“国庆节快乐!!!”)C:printf(“国庆节快乐!!!”);C:cout<<“国庆节快乐!!…...
SpringBoot2.7.9 配置文件加载方式
ConfigDataLocationResolver接口方法说明 isResolvable: 判断是否是需要转换的资源 resolve: 将单个ConfigDataLocation转换为ConfigDataResource集合,在激活环境配置之前加载,也就是profile文件加载之前加载 resolveProfileSpecific: 将单个ConfigDataL…...
详解C语言—文件操作
目录 1. 为什么使用文件 2. 什么是文件 3. 文件的使用 文件指针 文件的打开和关闭 三个标准的输入/输出流: 4. 文件的顺序读写 对字符操作: fputc: fgetc: 练习复制整个文件: 对字符串操作:…...
IntelliJ IDEA 常用快捷键一览表
目录 1-IDEA的日常快捷键 第1组:通用型 第2组:提高编写速度(上) 第3组:提高编写速度(下) 第4组:类结构、查找和查看源码 第5组:查找、替换与关闭 第6组:…...
cola 架构简单记录
cola 是来自张建飞(Frank)的偏实现的技术架构,里面的业务身份和扩展点也被MEAF引用,cola本身由java 实现、但其实可以是一种企业通用的技术架构。 业务身份来源 https://blog.csdn.net/significantfrank/article/details/8578556…...
FFmpeg常用结构体分析
目录 1.AVFormatConext 2.AVInputFormat 3.AVStream 4.AVCodecContext 5.AVPacket 6.AVCodec 7.AVFrame 8.AVIOContext 9.URLProtocol 10.URLContext 1.AVFormatConext AVFormatConext是一个贯穿全局地数据结构,AVFormatConext结构包含很多信息,…...
ChatGPT 学习笔记 | 什么是 Prompt-tuning?
文章目录 一、前言二、主要内容三、总结 🍉 CSDN 叶庭云:https://yetingyun.blog.csdn.net/ 一、前言 Prompt-tuning is an efficient, low-cost way of adapting an AI foundation model to new downstream tasks without retraining the model and upd…...
[红明谷CTF 2021]write_shell %09绕过过滤空格 ``执行
目录 1.正常短标签 2.短标签配合内联执行 看看代码 <?php error_reporting(0); highlight_file(__FILE__); function check($input){if(preg_match("/| |_|php|;|~|\\^|\\|eval|{|}/i",$input)){ 过滤了 木马类型的东西// if(preg_match("/| |_||php/&quo…...
JVM学习笔记
JVM学习笔记 复习之前学的内容,同时补充以下知识点:JVM的双亲委派机制、伊甸区与老年代相关知识; 双亲委派机制 首先介绍Java中的类加载器 Java中的类加载器 Bootstrap ClassLoader(启动类加载器),默认…...
使用 gst-element-maker 创建一个完全透传的 videofilter 插件
系列文章目录 创建 gstreamer 插件的几种方式 使用 gst-template 创建自己的 gstreamer 插件 使用 gst-plugins-bad 里面的 gst-element-maker 工具创建gstreamer 插件 使用 gst-element-maker 创建一个完全透传的 videofilter 插件 文章目录 系列文章目录前言一、使用gst-ele…...
华为ensp单臂路由及OSPF实验
单臂路由及OSPF实验 1.1实验背景 在这个实验中,我们模拟了一个复杂的网络环境,该网络环境包括多个子网和交换机。这个实验旨在帮助网络工程师和管理员了解如何配置单臂路由和使用开放最短路径优先(OSPF)协议来实现不同子网之间的…...
Android LiveData 介绍
Android LiveData 介绍 系列文章目录前言一、LiveData是什么?二、简单使用依赖测试数据准备1.创建可观察的livedata2.观察它3.更新它 总结 系列文章目录 Android LiveData 介绍(本文) 前言 本系列根据官网介绍Jetpack中的数据通信组件&…...
好看的货架效果(含3D效果)
搭配thymeleaf layui合成 货架一 1. css #gudinghuojia2F .layui-row { display: flex; justify-content: space-between; height: 100%;} #gudinghuojia2F .layui-col-xs10 {margin-right: 4%;} #gudinghuojia2F .layui-col-xs10:last-child {margin-right: 0;} .inner-ti…...
【每日一题】1498. 满足条件的子序列数目
1498. 满足条件的子序列数目 - 力扣(LeetCode) 给你一个整数数组 nums 和一个整数 target 。 请你统计并返回 nums 中能满足其最小元素与最大元素的 和 小于或等于 target 的 非空 子序列的数目。 由于答案可能很大,请将结果对 109 7 取余后…...
Go语言数据类型实例讲解 - Go语言从入门到实战
Go语言数据类型实例讲解 - Go语言从入门到实战 基础数据类型 bool string int int8 int16 int32 int64 uint uint8 uint16 uint32 uint64 uintptr byte rune float32 float64 complex64 complex128类型描述bool布尔型(bool):可以是true或f…...
RocketMQ 事务消息发送
目录 事务消息介绍 应用场景 功能原理 使用限制 使用示例 使用建议 事务消息介绍 在一些对数据一致性有强需求的场景,可以用 RocketMQ 事务消息来解决,从而保证上下游数据的一致性。 应用场景 分布式事务的诉求 分布式系统调用的特点为一个核…...
后端-POST请求中只需要两个参数,后端不想创建对象时
问题: 在前后端对接中,很多前端的规范是POST,参数放body里面,媒体类型是json,后端就需要用RequestBody去接收,但是后端只用接收两个对象,这时候后端不想创建对象,使用RequestParm&a…...
UG\NX二次开发 通过点云生成曲面 UF_MODL_create_surf_from_cloud
文章作者:里海 来源网站:《里海NX二次开发3000例专栏》 感谢粉丝订阅 感谢 Rlgun 订阅本专栏,非常感谢。 简介 有网友想做一个通过点云生成曲面的程序,我们也试一下 效果 代码 #include "me.hpp" /*HEAD CREATE_SURF_FROM_CLOUD CCC UFUN */...
Linux常用指令(二)
目录 一、 删除空目录(rmdir) 二、ln 硬链接与软链接 三、新建空文件或更新文件的时间戳(touch) 四、比较文件内容的差异(diff) 五、显示当前时间或设置系统时间(date) 六、显…...
如何高效使用空洞骑士Scarab模组管理器:专业级配置实战教程
如何高效使用空洞骑士Scarab模组管理器:专业级配置实战教程 【免费下载链接】Scarab An installer for Hollow Knight mods written with Avalonia. 项目地址: https://gitcode.com/gh_mirrors/sc/Scarab Scarab是一款专为《空洞骑士》玩家设计的专业级模组管…...
开发者会话管理工具:提升多任务开发效率的利器
1. 项目概述:一个为开发者打造的会话管理利器在开发日常中,我们常常会同时打开多个终端窗口、IDE项目、数据库连接或者远程服务器会话。一天下来,桌面上可能散落着十几个终端标签页,每个都承载着不同的上下文:一个在跑…...
立体仓库WMS深度解析
立体仓库WMS深度解析📌 封面语:立体仓库失败案例中,80% 不是硬件问题,而是 WMS 和 WCS “对话” 失败。想避坑,先搞懂这套软件怎么运转。 ✍️ 作者:这是「物流自动化软件内参」WMS 深度解析系列的第一篇。…...
IDM激活脚本:3分钟解锁完整版下载功能的终极指南
IDM激活脚本:3分钟解锁完整版下载功能的终极指南 【免费下载链接】IDM-Activation-Script-ZH IDM激活脚本汉化版 项目地址: https://gitcode.com/gh_mirrors/id/IDM-Activation-Script-ZH 还在为Internet Download Manager(IDM)的30天…...
一个开发团队的时序数据库选型实战手记
当实验室的模拟数据,遇上真实产线上轰鸣的机器与错综复杂的业务逻辑,我们才发现:选择一款数据库,远不止比拼性能数字那么简单。历时半年选型、三个月上线,本文将完整复盘我们从InfluxDB、TDengine到最终落地金仓KES时序…...
工业物联网数据上云省钱实战:边缘预处理与协议瘦身详解
背景与问题 工业物联网项目落地时,带宽费用往往是降本增效的第一道坎。几百台设备每秒上传数据,每月带宽费轻易上万,其中大量数据属于冗余“常态数据”。本文记录一套低成本方案:通过边缘计算网关做数据清洗与协议压缩,…...
ThreadLocal原理与内存泄漏防范
前言 在现代软件开发中,ThreadLocal原理与内存泄漏防范是一个非常重要的技术点。本文将从原理到实践,带你深入理解这一技术,并通过完整的代码示例帮助你快速掌握核心知识点。 核心概念 基本原理 ThreadLocal原理与内存泄漏防范的核心在于理解…...
基于APScheduler的定时提醒服务设计与Python实现
1. 项目概述与核心价值最近在折腾一个名为rogerwus/Noonwake_test的项目,这名字乍一看有点神秘,像是某个内部测试或者个人实验性质的仓库。作为一名常年泡在代码仓库里的开发者,我对这类项目标题背后的故事和技术探索总是充满好奇。经过一番深…...
Chunkhound:基于语义块与统一IR的智能代码理解框架解析
1. 项目概述:从“代码块猎犬”到智能代码理解 最近在琢磨一个挺有意思的开源项目,叫 chunkhound/chunkhound 。光看名字,你可能会联想到某种嗅觉灵敏的猎犬,没错,它的定位就是代码世界里的“猎犬”,专门负…...
AppleRa1n终极指南:5步免费绕过iOS 15-16 iCloud激活锁
AppleRa1n终极指南:5步免费绕过iOS 15-16 iCloud激活锁 【免费下载链接】applera1n icloud bypass for ios 15-16 项目地址: https://gitcode.com/gh_mirrors/ap/applera1n 你是否遇到过这样的情况:忘记了自己iPhone的Apple ID密码,或…...
