图片人脸检测——Dlib版(四)

上几篇给大家讲了OpenCV的图片人脸检测,而本文给大家带来的是比OpenCV更加精准的图片人脸检测Dlib库。

往期目录

视频人脸检测——Dlib版(六)
OpenCV添加中文(五)
图片人脸检测——Dlib版(四)
视频人脸检测——OpenCV版(三)
图片人脸检测——OpenCV版(二)
OpenCV环境搭建(一)

更多更新,欢迎访问我的github:https://github.com/vipstone/faceai


dlib与OpenCV对比

识别精准度:Dlib >= OpenCV

Dlib更多的人脸识别模型,可以检测脸部68甚至更多的特征点

效果展示

人脸的68个特征点

安装dlib

下载地址:https://pypi.org/simple/dlib/ 选择适合你的版本,本人配置:

Window 10 + Python 3.6.4

我现在的版本是:dlib-19.8.1-cp36-cp36m-win_amd64.whl

使用命令安装:

pip3 install D:\soft\py\dlib-19.8.1-cp36-cp36m-win_amd64.whl

显示结果: Processing d:\soft\py\dlib-19.8.1-cp36-cp36m-win_amd64.whl Installing collected packages: dlib Successfully installed dlib-19.8.1

为安装成功。

下载训练模型

训练模型用于是人脸识别的关键,用于查找图片的关键点。

下载地址:http://dlib.net/files/

下载文件:shape_predictor_68_face_landmarks.dat.bz2

当然你也可以训练自己的人脸关键点模型,这个功能会放在后面讲。

下载好的模型文件,我的存放地址是:C:\Python36\Lib\site-packages\dlib-data\shape_predictor_68_face_landmarks.dat.bz2

解压:shape_predictor_68_face_landmarks.dat.bz2得到文件:shape_predictor_68_face_landmarks.dat

代码实现

#coding=utf-8import cv2
import dlibpath = "img/meinv.png"
img = cv2.imread(path)
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)#人脸分类器
detector = dlib.get_frontal_face_detector()
# 获取人脸检测器
predictor = dlib.shape_predictor("C:\\Python36\\Lib\\site-packages\\dlib-data\\shape_predictor_68_face_landmarks.dat"
)dets = detector(gray, 1)
for face in dets:shape = predictor(img, face)  # 寻找人脸的68个标定点# 遍历所有点,打印出其坐标,并圈出来for pt in shape.parts():pt_pos = (pt.x, pt.y)cv2.circle(img, pt_pos, 2, (0, 255, 0), 1)cv2.imshow("image", img)cv2.waitKey(0)
cv2.destroyAllWindows()

 

 

 

 


 

连载目录:

《OpenCV环境搭建(一)》

《图片人脸检测——OpenCV版(二)》

《视频人脸检测——OpenCV版(三)》

《图片人脸检测——Dlib版(四)》

 

更多动态,请关注我的GitHub:https://github.com/vipstone/faceai

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/546960.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

kubernetes 实战 使用 nfs 作为动态 storageClass 存储

kubernetes 实战 使用 nfs 作为动态 storageClass 存储 概述 之前有介绍过 Kubernetes 实战 pv and pvc, 相信使用过的pv和pvc的同学或者有过虚拟化经验的人来说肯定会想到很多问题,比如每次申请 pvc 都需要手动添加pv,这岂不是太不方便了。那…

OpenCV环境搭建(一)

OpenCV环境搭建 环境搭建为OpenCV的python(一下简称py)开发环境搭建,建立在py3的环境和语法上实现的。 windows系统搭建 系统环境:windows 10 python 3.6 OpenCV 3.4.1 一、安装python python的安装之前在python自学笔记的项…

git+pylint实现python提交代码格式校验

环境:win10(64),python3.7.1,git2.7.2,pylint-2.3.1,git_pylint_commit_hook-2.5.1 以上为当期搭建所用到的版本,有异常时方便查找问题。 安装pylint,pylint是一个单独可以对python文件进行格…

OpenCV添加中文(五)

OpenCV添加文字的方法putText(…),添加英文是没有问题的,但如果你要添加中文就会出现“???”的乱码,需要特殊处理一下。 下文提供封装好的(代码)方法,供OpenCV添加中文使…

UpdatePanel的内容中出现自定义多语言运行异常

2019独角兽企业重金招聘Python工程师标准>>> 我们项目有双语要求&#xff0c;采用的是自定义符号控制。在页面加载时进行翻译。 在xml文件中有如下格式的配置 <items> <resource page"~/SalesAppeal/SalesAppealCO.aspx"> <item key"…

ELK开机自启动脚本

elasticsearch服务配置文件 cd /etc/init.dtouch elasticsearchchmod x elasticsearchvi elasticsearch并输入以下内容: #!bin/bash# chkconfig: 2345 21 89 # description: elasticsearch# JAVA_HOME/usr/lib/jvm/jdk1.8.0_91 ES_HOME/usr/local/elasticsearch-6.7.2 case…

使用Bazel编译报错ERROR: Unrecognized option: --experimental_repo_remote_exec解决方法

ERROR: Unrecognized option: --experimental_repo_remote_exec 一、问题&#xff1a; INFO: Options provided by the client:Inherited common options: --isatty1 --terminal_columns80 INFO: Reading rc options for version from /home/emadboctor/tensorflow/.bazelrc:I…

视频人脸检测——Dlib版(六)

往期目录 视频人脸检测——Dlib版&#xff08;六&#xff09; OpenCV添加中文&#xff08;五&#xff09; 图片人脸检测——Dlib版&#xff08;四&#xff09; 视频人脸检测——OpenCV版&#xff08;三&#xff09; 图片人脸检测——OpenCV版&#xff08;二&#xff09; …

OpenPose+win10安装

openpose在win10上的环境配置和安装&#xff0c;主要参考&#xff1a;OpenPose_1.3.0 vs2017 cuda_9.2.148_win10 cudnn9.2-windows10-x64-v7.2.1.38 windows 配置教程_无情时尚的博客-CSDN博客_openpose vs 另一篇博客后半部分有讲如何使用代码实现相应的功能&#xff1a;…

超简单的视频对象提取程序

视频对象提取 与其说是视频对象提取&#xff0c;不如说是视频颜色提取&#xff0c;因为其本质还是使用了OpenCV的HSV颜色物体检测。 HSV介绍 HSV分别代表&#xff0c;色调&#xff08;H&#xff1a;hue&#xff09;&#xff0c;饱和度&#xff08;S&#xff1a;saturation&a…

Win10安装 WSL Ubuntu Linux系统,非双系统,完美兼容超详细版本

Windows SubSystem for Linux(WSL) 适用于Linux的Windows子系统 WSL团队的blog:Windows Subsystem for Linux | Microsoft Docs WSL的官方文档&#xff1a;What is Windows Subsystem for Linux | Microsoft Docs 最近需要Linux的shell环境进行学习&#xff0c;之前一直是在虚…

QT5 exec()模态显示子对话框,父子对话框都最小化后显示桌面

QT5 exec()模态显示子对话框&#xff0c;在任务栏上单击鼠标右键&#xff0c;出现‘’显示桌面”选项&#xff0c;选中后&#xff0c;QT5父对话框最小化&#xff0c;但是子对话框一直显示在最上层&#xff0c;却不随父对话框一起最小化。后来发现是添加了Qt::WindowStaysOnTopH…

基于python的图片修复程序-可用于水印去除

图片修复程序-可用于水印去除 在现实的生活中&#xff0c;我们可能会遇到一些美好的或是珍贵的图片被噪声干扰&#xff0c;比如旧照片的折痕&#xff0c;比如镜头上的灰尘或污渍&#xff0c;更或者是某些我们想为我所用但有讨厌水印&#xff0c;那么有没有一种办法可以消除这些…

Promethus搭建 K8S 集群节点资源监控系统

对于集群的监控一般我们需要考虑以下几个方面&#xff1a; Kubernetes 节点的监控&#xff1a;比如节点的 cpu、load、disk、memory 等指标 内部系统组件的状态&#xff1a;比如 kube-scheduler、kube-controller-manager、kubedns/coredns 等组件的详细运行状态 编排级的 me…

Android TensorFlow Lite 深度学习识别手写数字mnist demo

一. TensorFlow Lite TensorFlow Lite介绍.jpeg TensorFlow Lite特性.jpeg TensorFlow Lite使用.jpeg TensorFlow Lite 是用于移动设备和嵌入式设备的轻量级解决方案。TensorFlow Lite 支持 Android、iOS 甚至树莓派等多种平台。 我们知道大多数的 AI 是在云端运算的&#xff0…

RabbitMQ在Ubuntu上的环境搭建

环境配置 - Ubuntu Server 18.04 - RabbitMQ 3.6.10 安装之前 我们使用apt-get进行RabbitMQ安装&#xff0c;在安装之前&#xff0c;强烈建议您把apt源换位国内&#xff0c;大大增加下载安装的速度&#xff0c;点击查看&#xff1a;《Ubuntu apt-get和pip国内源更换》 安装…

QT5开发的程序打包发布

一、开发平台 QT5开发的程序打包发布出来&#xff0c;在任何一台windows系统都能运行&#xff0c;这样就不会限于电脑需不需要安装QT安装包了。 自己用的QT版本是 我的电脑系统是WIn10专业版的。 二、介绍一下打包工具。 1.一个是QT5自带的windeployqt&#xff08;这个大家不…

带你玩转七牛云存储——高级篇

七牛云图片存储优点 支持各种尺寸的图片缩放&#xff1b;支持图片自动压缩&#xff1b;支持水印添加&#xff1a;图片水印、文字水印两种模式&#xff1b;图片防盗链&#xff0c;限制访问来源&#xff1b;设置ip黑白名单&#xff0c;防止恶意盗刷、攻击&#xff1b;自定义图片…

Opencv dnn实现人类性别检测和年龄预测

概述 前面我写了很多篇关于OpenCV DNN应用相关的文章&#xff0c;这里再来一篇文章&#xff0c;用OpenCV DNN实现一个很有趣好玩的例子&#xff0c;基于Caffe的预训练模型实现年龄与性别预测&#xff0c;这个在很多展会上都有展示&#xff0c;OpenCV DNN实现这里非常简洁明了&a…

Vim设置默认字体、窗口大小和配色方案

最新开始学习Vim&#xff0c;每次打开窗口后&#xff0c;发现自动打开的Vim编辑窗口很小&#xff0c;又是使用的高分辨率笔记本&#xff0c;所以字体也很小&#xff0c;上网查找了一下解决方法&#xff0c;总结如下。 修改都是在_vimrc文件进行的&#xff0c;该文件位于vim安装…