简介

上了一门计算机视觉的课程,初步了解, dlib python库

参考链接

http://dlib.net/face_detector.py.html 人脸检测的链接

原理

This face detector is made using the now classic Histogram of Oriented

Gradients (HOG) feature combined with a linear classifier, an image

pyramid, and sliding window detection scheme. This type of object detector

is fairly general and capable of detecting many types of semi-rigid objects

in addition to human faces. Therefore, if you are interested in making

your own object detectors then read the train_object_detector.py example program.

谷歌翻译

该面部检测器是使用现在经典的定向直方图(HOG)功能与线性分类器,图像金字塔和滑动窗口检测方案组合而成的。

这种类型的物体检测器相当通用,并且能够检测除人脸之外的许多类型的半刚性物体。

因此,如果您有兴趣制作自己的对象检测器,请阅读train_object_detector.py示例程序。

如果没有猜错应该使用了传统的方法??

想得到分数

# Finally, if you really want to you can ask the detector to tell you the score
# for each detection. The score is bigger for more confident detections.
# The third argument to run is an optional adjustment to the detection threshold,
# where a negative value will return more detections and a positive value fewer.
# Also, the idx tells you which of the face sub-detectors matched. This can be
# used to broadly identify faces in different orientations.

code

# coding=utf-8
import dlib # 人脸算法库
from imageio import imread
import glob # 操作文件的相关模块 # 准备好人脸检测器和显示窗口,获取图片路径
detector = dlib.get_frontal_face_detector()
win = dlib.image_window()
paths=glob.glob('faces/*.jpg')
# 对每一张图片进行检测,并显示检测结果对应的矩形框
for path in paths:
img = imread(path)
# 1 表示将图片放大一杯,便于检测更过人脸
dets = detector(img, 1)
print('检测到了 %d 个人脸' % len(dets))
for i,d in enumerate(dets):
# 函数用于将一个可遍历的数据对象(如列表、元组或字符串)
# 组合为一个索引序列,同时列出数据和数据下标,一般用在 for 循环当中。
print("Detection {}: Left: {} Top: {} Right: {} Bottom: {}".format(i, d.left(), d.top(), d.right(), d.bottom())) # dets 是已经检测到的人脸
win.clear_overlay() # 清除覆盖
win.set_image(img)
win.add_overlay(dets)
dlib.hit_enter_to_continue()
dets, scores, idx = detector.run(img, 1, -1) # 其中1 表示放大 -1 表示 阈值 如果为正数那么相关的低于阈值的信息就会被筛选掉
for i, d in enumerate(dets):
print("Detection {}, score: {}, face_type:{}".format(d, scores[i], idx[i]))

结果

检测到了 1 个人脸

Detection 0: Left: 206 Top: 428 Right: 872 Bottom: 1094

Hit enter to continue

Detection [(206, 428) (872, 1094)], score: 2.9385107197297926, face_type:0

Detection [(114, 744) (176, 806)], score: -0.7111557926037881, face_type:2

Detection [(170, 847) (213, 890)], score: -0.8928528437771357, face_type:3

Detection [(121, 793) (196, 868)], score: -0.9795470083884772, face_type:1

关于人脸检测python库 dlib 初识 1的更多相关文章

  1. Python 3 利用 Dlib 实现摄像头人脸检测特征点标定

    0. 引言 利用 Python 开发,借助 Dlib 库捕获摄像头中的人脸,进行实时人脸 68 个特征点标定: 支持多张人脸: 有截图功能: 图 1 工程效果示例( gif ) 图 2 工程效果示例( ...

  2. Python 3 利用 Dlib 实现人脸检测和剪切

    0. 引言 利用 Python 开发,借助 Dlib 库进行人脸检测 / face detection 和剪切:   1. crop_faces_show.py : 将检测到的人脸剪切下来,依次排序平 ...

  3. 人脸检测? 对Python来说太简单, 调用dlib包就可以完成

    "Dlib 是一个现代化的 C ++ 工具包,包含用于创建复杂软件的机器学习算法和工具 " .它使您能够直接在 Python 中运行许多任务,其中一个例子就是人脸检测. 安装 dl ...

  4. winds dlib人脸检测与识别库

    在人脸检测与人脸识别库中dlib库所谓是非常好的了.检测效果非常ok,下面我们来了解一下这个神奇的库吧! 第一步我们首先学会安装:dlib ,winds+pytho3.6.5  Windows不支持p ...

  5. 【计算机视觉】人脸检测模型的评估方法-linux

    前言 人脸检测标准库FDDB详细介绍了数据库和使用方法.对于训练的模型,如何评估模型的效果呢,本文对此进行介绍.说实话,参考了很多博客,但是感觉都不是很明白(当然本文也会有瑕疵),故在此记录! 测试环 ...

  6. dlib python 人脸检测与关键点标记

    http://blog.csdn.net/sunmc1204953974/article/details/49976045 人脸检测 #coding=utf-8 # -*- coding: utf-8 ...

  7. Python学习--使用dlib、opencv进行人脸检测标注

    参考自https://www.pyimagesearch.com/2017/04/03/facial-landmarks-dlib-opencv-python/ 在原有基础上有一部分的修改(image ...

  8. Python 3 利用 Dlib 实现摄像头实时人脸检测和平铺显示

    1. 引言 在某些场景下,我们不仅需要进行实时人脸检测追踪,还要进行再加工:这里进行摄像头实时人脸检测,并对于实时检测的人脸进行初步提取: 单个/多个人脸检测,并依次在摄像头窗口,实时平铺显示检测到的 ...

  9. Python 3 利用 Dlib 19.7 进行人脸检测

    0. 引言 / Overview 介绍 Dlib 中基于 HOG,Histogram of Oriented Gradients / 方向梯度直方图 实现 Face Detect / 人脸检测 的两个 ...

  10. Dlib库中实现正脸人脸检测的测试代码

    Dlib库中提供了正脸人脸检测的接口,这里参考dlib/examples/face_detection_ex.cpp中的代码,通过调用Dlib中的接口,实现正脸人脸检测的测试代码,测试代码如下: #i ...

随机推荐

  1. vscode 远程(隧道/ssh) remote 开发 linux 显示远程桌面GUI 配置 SSH X11 服务

    原文地址 https://www.cnblogs.com/Bubgit/p/18829192 实现效果 windows显示ubuntu 的 GUI 桌面显示内容, 以wails 项目为例 搭建远程li ...

  2. Jeesite5:Star24k,Spring Boot 3.3+Vue3实战开源项目,架构深度拆解!让企业级项目开发效率提升300%的秘密武器

    企业级应用开发的需求日益增长.今天,我们要介绍的是一个在GitHub上广受好评的开源项目--Jeesite5.这不仅是一个技术框架,更是企业级应用开发的加速器.接下来,我们将深入探讨Jeesite5的 ...

  3. jdbc写一个访问数据库的工具类

    操作的工具类 package com.zjw.jdbc2; /** * jdbc操作的工具类 * @author Administrator * */ import java.sql.Connecti ...

  4. Vue3的14种组件通信方式

    对于日常使用vue3开发项目的前端小伙伴来说,组件通信方式可以说是必会的基本功,今天带大家一起盘下vue3的通信方式. 我们这里按照组件的关系来划分.总共包含14中组件通信方式. 一.父子通信 pro ...

  5. html_py

    Sock.py import socket def handle_request(client):     buf=client.recv(1024)     client.send(bytes(&q ...

  6. C#之Lazy<T>

    Lazy<T>主要用在单例模式,是一种延迟加载(Lazy Loading)的机制,它允许您推迟对象的创建直到第一次访问该对象.这种方式在需要时才分配资源,能够提高性能和资源利用率.Lazy ...

  7. 8086汇编(16位汇编)学习笔记00.DEBUG命令使用解析及范例大全

    转载自:https://bpsend.net/thread-99-1-1.html 启动 Debug,它是可用于测试和调试 MS-DOS 可执行文件的程序. Debug [[drive:][path] ...

  8. 【公众号搬运】gap

    .markdown-body { line-height: 1.8; font-weight: 400; font-size: 16px; word-spacing: 2px; letter-spac ...

  9. 详解鸿蒙开发如何上传三方库到ohpm仓库

    前两天幽蓝君在ohpm仓库上传了自己的第一个三方库,完整体验了一下ohpm的上传流程,感觉还是比较繁琐的,所以把上传流程和一些注意事项分享给大家. 先介绍一下怎么开发一个三方库,在项目名称右键,新建M ...

  10. Fiddler抓包工具安装HTTPS证书

    安装好之后,打开Fiddler根目录,打开CMD 执行以下内容 makecert.exe -r -ss my -n "CN=DO_NOT_TRUST_FiddlerRoot, O=DO_NO ...