【人脸检测】学界 | 中科院自动化研究所提出 FaceBoxes:实时、高准确率的 CPU 面部检测器

本文主要是介绍【人脸检测】学界 | 中科院自动化研究所提出 FaceBoxes:实时、高准确率的 CPU 面部检测器,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

要想用神经网络有效地进行面部检测等操作,往往需要 GPU 等高速并行的计算设备。如果仅使用 CPU,往往会遇到速度与准确度不能兼得的困境。为了解决这个问题,中国科学院自动化研究所和中国科学院大学的研究者提出了一种名叫 FaceBoxes 的新方法,在保证了 CPU 面部识别的准确度的同时,还做到了实时处理。机器之心对该研究进行了摘要介绍。

论文:一种使用 CPU 的高准确度实时面部检测器(FaceBoxes: A CPU Real-time Face Detector with High Accuracy)

论文地址:https://arxiv.org/abs/1708.05234

尽管面部检测领域已经取得了巨大的进展,但要在 CPU 上满足高表现水平的同时实现实时的速度仍然还是一个悬而未决的难题,因为用于面部检测的有效模型往往需要过高的计算基础。为了解决这个难题,我们提出了一种全新的面部检测器 FaceBoxes,它在速度和准确度上都表现优异。具体而言,我们的方法具有轻量却又强大的网络结构,它由快速消化的卷积层(RDCL:Rapidly Digested Convolutional Layers)和多尺度卷积层(MSCL:Multiple Scale Convolutional Layers)构成。RDCL 可以让 FaceBoxes 在 CPU 上实现实时的速度;而 MSCL 的目的是在不同层上丰富感受野(receptive field)和离散化 anchor,以便处理不同尺度的面部。此外,我们还提出了一种新的 anchor 密度化策略,可以让图像上不同类型的 anchor 具有相同的密度,这可以显著提升小面部的召回率。由此,我们提出的这个检测器在 VGA 分辨率的图像上可以在单核 CPU 上以 20 FPS 的速度运行,也可在单个 GPU 上以 125 FPS 的速度运行。此外,FaceBoxes 的速度不会因人脸的数量发生改变。我们对这种方法进行了全面的评估,并且在 AFW、PASCAL 人脸数据集和 FDDB 等多个面部检测基准数据集上都得到了当前最佳的检测表现。

图 1:FaceBoxes 的架构以及我们的 anchor 设计的详细信息表

图 2: ( a ) C.ReLU 模块,其中 Negation 只是简单地为 Convolution 的输出乘上 -1。 ( b ) Inception 模块

图 3:anchor 密度化示例。为了清楚说明,我们仅对一个感受野中心(即中心的黑色单元)的 anchor 进行了密度化,并且只标出了对角 anchor 的颜色

表 1:不同方法的整体 CPU 推理时间和 mAP 比较。FPS 是在 CPU 上处理 VGA 分辨率图像的速度,mAP 的意思是在 FDDB 上 1000 个假正例的真正例率。要提一下,STN [ 5 ] 的 mAP 是 179 个假正例的真正例率,并且使用了 ROI 卷积,它的 FPS 可以提速到 30,而召回率仅会降低 0.6%

表 2:FaceBoxes 在 FDDB 数据集上增添不同方法时的结果变化。Accuracy ( mAP ) 表示 1000 个假正例的真正例率。Speed ( ms ) 是在 CPU 上处理 VGA 分辨率图像的速度

图 4:在 AFW 数据集上的精度召回率曲线

图 5:在 PASCAL 人脸数据集上的精度召回率曲线

图 6:在 FDDB 数据集上的评估结果

本文为机器之心编译,转载请联系本公众号获得授权。

这篇关于【人脸检测】学界 | 中科院自动化研究所提出 FaceBoxes:实时、高准确率的 CPU 面部检测器的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/670608

相关文章

Jenkins中自动化部署Spring Boot项目的全过程

《Jenkins中自动化部署SpringBoot项目的全过程》:本文主要介绍如何使用Jenkins从Git仓库拉取SpringBoot项目并进行自动化部署,通过配置Jenkins任务,实现项目的... 目录准备工作启动 Jenkins配置 Jenkins创建及配置任务源码管理构建触发器构建构建后操作构建任务

使用Python检查CPU型号并弹出警告信息

《使用Python检查CPU型号并弹出警告信息》本教程将指导你如何编写一个Python程序,该程序能够在启动时检查计算机的CPU型号,如果检测到CPU型号包含“I3”,则会弹出一个警告窗口,感兴趣的小... 目录教程目标方法一所需库步骤一:安装所需库步骤二:编写python程序步骤三:运行程序注意事项方法二

综合安防管理平台LntonAIServer视频监控汇聚抖动检测算法优势

LntonAIServer视频质量诊断功能中的抖动检测是一个专门针对视频稳定性进行分析的功能。抖动通常是指视频帧之间的不必要运动,这种运动可能是由于摄像机的移动、传输中的错误或编解码问题导致的。抖动检测对于确保视频内容的平滑性和观看体验至关重要。 优势 1. 提高图像质量 - 清晰度提升:减少抖动,提高图像的清晰度和细节表现力,使得监控画面更加真实可信。 - 细节增强:在低光条件下,抖

C#实战|大乐透选号器[6]:实现实时显示已选择的红蓝球数量

哈喽,你好啊,我是雷工。 关于大乐透选号器在前面已经记录了5篇笔记,这是第6篇; 接下来实现实时显示当前选中红球数量,蓝球数量; 以下为练习笔记。 01 效果演示 当选择和取消选择红球或蓝球时,在对应的位置显示实时已选择的红球、蓝球的数量; 02 标签名称 分别设置Label标签名称为:lblRedCount、lblBlueCount

烟火目标检测数据集 7800张 烟火检测 带标注 voc yolo

一个包含7800张带标注图像的数据集,专门用于烟火目标检测,是一个非常有价值的资源,尤其对于那些致力于公共安全、事件管理和烟花表演监控等领域的人士而言。下面是对此数据集的一个详细介绍: 数据集名称:烟火目标检测数据集 数据集规模: 图片数量:7800张类别:主要包含烟火类目标,可能还包括其他相关类别,如烟火发射装置、背景等。格式:图像文件通常为JPEG或PNG格式;标注文件可能为X

【Linux 从基础到进阶】Ansible自动化运维工具使用

Ansible自动化运维工具使用 Ansible 是一款开源的自动化运维工具,采用无代理架构(agentless),基于 SSH 连接进行管理,具有简单易用、灵活强大、可扩展性高等特点。它广泛用于服务器管理、应用部署、配置管理等任务。本文将介绍 Ansible 的安装、基本使用方法及一些实际运维场景中的应用,旨在帮助运维人员快速上手并熟练运用 Ansible。 1. Ansible的核心概念

基于 YOLOv5 的积水检测系统:打造高效智能的智慧城市应用

在城市发展中,积水问题日益严重,特别是在大雨过后,积水往往会影响交通甚至威胁人们的安全。通过现代计算机视觉技术,我们能够智能化地检测和识别积水区域,减少潜在危险。本文将介绍如何使用 YOLOv5 和 PyQt5 搭建一个积水检测系统,结合深度学习和直观的图形界面,为用户提供高效的解决方案。 源码地址: PyQt5+YoloV5 实现积水检测系统 预览: 项目背景

JavaFX应用更新检测功能(在线自动更新方案)

JavaFX开发的桌面应用属于C端,一般来说需要版本检测和自动更新功能,这里记录一下一种版本检测和自动更新的方法。 1. 整体方案 JavaFX.应用版本检测、自动更新主要涉及一下步骤: 读取本地应用版本拉取远程版本并比较两个版本如果需要升级,那么拉取更新历史弹出升级控制窗口用户选择升级时,拉取升级包解压,重启应用用户选择忽略时,本地版本标志为忽略版本用户选择取消时,隐藏升级控制窗口 2.

如何使用Ansible实现CI/CD流水线的自动化

如何使用Ansible实现CI/CD流水线的自动化 持续集成(CI)和持续交付(CD)是现代软件开发过程中的核心实践,它们帮助团队更快地交付高质量的软件。Ansible,作为一个强大的自动化工具,可以在CI/CD流水线中发挥关键作用。本文将详细介绍如何使用Ansible实现CI/CD流水线的自动化,包括设计流水线的结构、配置管理、自动化测试、部署、以及集成Ansible与CI/CD工具(如Jen

[数据集][目标检测]血细胞检测数据集VOC+YOLO格式2757张4类别

数据集格式:Pascal VOC格式+YOLO格式(不包含分割路径的txt文件,仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件) 图片数量(jpg文件个数):2757 标注数量(xml文件个数):2757 标注数量(txt文件个数):2757 标注类别数:4 标注类别名称:["Platelets","RBC","WBC","sickle cell"] 每个类别标注的框数: