Dlib-人脸识别API说明
1. dlib.get_frontal_face_detector(PythonFunction,in Classes)
返回值是<class ‘dlib.dlib.rectangle’>,就是一个矩形
坐标为[(x1, y1) (x2, y2)]
可以通过函数的left,right,top,bottom方法分别获取对应的x1, x2, y1, y2值:
import cv2
import dlib
img = cv2.imread('my_image.jpg')
#返回一个人脸检测器
detector = dlib.get_frontal_face_detetor()
#这是从gray_img中返回人脸集合
dets = detector(gray_img, 1)
#依次打印人脸的坐标
for i, d in enumerate(dets):print(type(d))y1 = d.top() if d.top() > 0 else 0y2 = d.bottom() if d.bottom() > 0 else 0x1 = d.left() if d.left() > 0 else 0x2 = d.right() if d.right() > 0 else 0
2. dlib::get_face_chip_details
人脸特征点对齐
dlib::get_face_chip_details(shape, 150, 0.25)
输入参数:shape为提取的人脸关键点,68个点
160
为希望获取的对齐后的人脸大小
0.25
是希望对人脸关键点区域进行padding的比例
2.1. padding的含义
dlib内部使用了51个人脸关键点进行对齐,如下图所示:
假设padding大小为0.25,padding之后的人脸关键点如下图所示:
上述两幅图像为同样大小,均为150*150,可以看到使用0.25为系数进行padding之后得到的人脸区域明显内收,得到了包含更大面部区域的对齐图像。
2.2 get_face_chip_details(shape, 150, 0.25)
函数的计算过程分为两部分:
首先对上述第二幅图所示的关键点中选取编号为10-37,43-47的关键点,也就是鼻子、左眼、右眼及上嘴唇部分的基准关键点,同时获取当前图像检测出的对应位置的关键点;
计算上述两个点集之间的相似变换矩阵,获取当前人脸图像相对于基准人脸间的旋转角度、缩放系数及应该获取的人脸区域的rect坐标。
注:相似变换及进行二维图像间的旋转、平移及缩放,在改变的过程中保持形状不变(大小方向和位置可变)的图形,也就是正方形变换完还是正方形,不会像仿射变换一样还可以变换为平行四边形。
3. extract_image_chip
函数的作用是根据计算出的相似变换的矩阵location,从原始图像img中得到变换后的图像块chip,使用interp插值方法。
Dlib-人脸识别API说明相关推荐
- 某简单易懂的人脸识别 API 的开发环境搭建和简易教程
最近接了个人脸识别相关的项目,是基于某个非常简单易懂的人脸识别 API:face_recognition 做的.这个库接口非常傻瓜,很适合新手上手,而且可以研究其源码来学习 dlib 这个拥有更加灵活 ...
- python dlib人脸识别_python3+dlib人脸识别及情绪分析
一.介绍 我想做的是基于人脸识别的表情(情绪)分析.看到网上也是有很多的开源库提供使用,为开发提供了很大的方便.我选择目前用的比较多的dlib库进行人脸识别与特征标定.使用python也缩短了开发周期 ...
- 人脸识别api_使用人脸识别API的人脸识别
人脸识别api The world's simplest facial recognition API for Python and the command line 世界上最简单的Python和命令 ...
- 实战 | 如何用最快的速度学会Dlib人脸识别开发?
作者 | 小宋是呢 来源 | 转载自小宋是呢 项目GitHub地址:https://github.com/xiaosongshine/dlib_face_recognition 1.背景介绍 Dlib ...
- [深度应用]·实战掌握Dlib人脸识别开发教程
[深度应用]·实战掌握Dlib人脸识别开发教程 个人网站--> http://www.yansongsong.cn/ 项目GitHub地址--> https://github.com/xi ...
- 调用百度人脸识别API进行人脸对比 C语言
百度人脸识别api使用是免费的,有人脸对比.人脸搜索.人脸检测与属性分析三个功能,本文写的是人脸对比.这里给出百度人脸对比api的技术文档,请点击网址https://cloud.baidu.com/d ...
- 树莓派调用百度人脸识别API实现人脸识别
前言 树莓派配置OpenCV,配置起来有点繁琐且耗时,调用百度智能云的人脸识别API是一个很好的解决方案 文章目录 前言 一.申请AppID.API Key和Secret Key 1.1创建应用 1. ...
- 百度人脸识别API调用实现
目录 一. 准备工作 A. 应用创建 1. 百度用户创建登录 2. 进入人脸识别服务 3. 应用创建 4.应用查看 B. 开发准备 1. 工具类下载 2. maven依赖注入 二. 调用实现 A. 看 ...
- 人脸识别API(免费)
文章来自:源码在线https://www.shengli.me/api/58.html; 人脸检测系统在互联网上供能多人使用,这样的话对服务器的性能要求十分高,要用到GPU服务,这样不划算,网上租一个 ...
- 基于Python的百度AI人脸识别API接口(可用于OpenCV-Python人脸识别)
基于Python的百度AI人脸识别API接口(可用于OpenCV-Python人脸识别) 资源: download.csdn.net/download/weixin_53403301/43644312 ...
最新文章
- 高通Android平台硬件调试之Camera篇
- Linux之CentOS用ifconfig没显示ip显示了inet6
- Google Mock启蒙篇 [2] (Google C++ Mocking Framework for Dummies 翻译)
- 应用vb编程_VB编程中的列表框综合应用讲解
- map转成url拼接请求参数
- c++类成员变量初始化详解
- 程序设计思维与实践 Week15 实验
- 京东前台PC首页系统技术详解
- 计算机地图综合制图实验报告,地图制图实验报告.doc
- 联想拯救者wif开不了_联想拯救者为什么连不上wifi
- 中国联通智慧客服项目31省集约收官,百度智能客服服务全国最多用户
- 知云文献翻译打不开_神器推荐丨知云文献翻译软件 WIN/MAC/IOS/ANDROID/网页版
- 遥感处理平台的发展(ENVI与GEE的比较)
- 2015-10-13 OC语言中的复合
- 详解 ERC-20 vs ERC-777、ERC-721 vs ERC-1155: 它们有何不同?
- ZLib 解压缩工具
- 宽带功率放大器的应用
- android 自定义输入法布局,Android InputMethodService|KeyboardView 自定义输入法和键盘 01...
- Le Potato + Jumbospot MMDVM热点盒子
- python错误提示未定义tn_python程序中的全局名称错误[关闭]
热门文章
- 网站自动适配技术实现原理
- Android界面布局基本属性
- android中menu菜单扩增_创意菜单效果
- 螃蟹保存方法保存时间_螃蟹吃不完怎么保存?学会这4招,不论是海蟹、河蟹通通都不愁...
- 并联机构工作空间求解_断路器机构弹簧的设计
- Linux中进程与线程的概念以及区别
- ORACLE中如何查找定位表最后DML操作的时间小结
- laravel Ajax请求 X-CSRF验证问题
- 以太坊智能合约开发第五篇:字符串拼接—Solidity
- AnyForWeb告诉你什么才是“最好的”编程语言