人头测试图_人脸识别检测

人头测试图_人脸识别检测参考链接:https://blog.csdn.net/hahabeibei/article/details/来自霍尼韦尔的资深数据科学家AdityaVora分享

参考链接:人头识别-人群中准确快速的检测头部算法

 

来自霍尼韦尔的资深数据科学家Aditya Vora分享了一种快速精准的人头检测(head detector)算法并开源了代码。

先来看下检测视频截图:

人头测试图_人脸识别检测

人头检测在安防监控中是比较常用的功能,而公交车、商场或者大型场馆的拥挤人群计数的精准性也非常重要。

https://www.52cv.net/wp-content/uploads/2018/09/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_25-1024x569.png

传统的算法原理
作者称拥挤人群计数目前主要有两种实现路径:
1.运用回归的算法思绪,直接依据图像回归出拥堵人群密度热图,它的缺陷是只能得到场景整体的一个拥堵指数,不能获知人群个体的详细位置,而且这种办法对图像分辨率很敏感。
2.运用目的检测的办法,比方直接运用Faster RCNN检测人,检测后数目的为“人”的个数。这种办法的缺陷是在人物互相遮挡的状况下常常性能较差,而人群越拥堵互相遮挡的可能性越大,招致算法运用受限。

https://www.52cv.net/wp-content/uploads/2018/09/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_25-1024x569.png

该文作者希望设计更有针对性的精准的人头检测,完成愈加精准的人群计数。
作者创新的两点,轻量级人头检测网络和anchors尺度的选择。
算法的网络架构:

从上图可知,网络的前半局部是VGG16特征提取网络,经过一次卷积,然后分开分别运用1*1卷积进入Regression head(用于回归人头的位置信息)和Classification head(用于分类能否为人头)。

在检测网络中,anchors是很重要的概念,是一组预定义的包围框,在对象检测系统中预测尺度和位移。作者以为普通目的辨认中anchors的尺度定义过大,应该依据“有效感受野”(effective receptive field)的思想,减小尺度(直观上“人头”目的比“人体”目的也要小)。

 

 

实验结果
作者在BRAINWASH数据库上做了实验,打败了三个基线算法,并取得了与最好结果算法“可比较“的性能。

https://www.52cv.net/wp-content/uploads/2018/09/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_261.png

 

提出的算法比较快,使用Quadro M1000M显卡(仅有512 CUDA核心)速度达到5fps,使用Jetson TX2(仅有256 CUDA核心)速度1.6fps。相比以往算法更加适合于嵌入式边缘计算平台。

https://www.52cv.net/wp-content/uploads/2018/09/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_262.png

 

以上内容都来自参考链接。

先去GitHub上找到FCHD:

人头测试图_人脸识别检测

第一个是原版,第二个是翻译版,本人擅长中文。。。

下载源码(文末有分享)。

本工程是官方工程的python3版本,重构了部分代码,并训练得到了一个效果不错的模型。

论文地址:https://arxiv.org/abs/1809.08766
官方工程地址:https://github.com/aditya-vora/FCHD-Fully-Convolutional-Head-Detector

安装

  1. Clone
    git clone https://github.com/embracesource-cv-com/FCHD.git
    
  2. 安装依赖
    cd FCHD
    pip install -r requirements.txt

安装可能会遇到问题,一般解决方案有:

1)去掉版本号

2)换源

3)建议使用python3   64位版本,不要使用32位!

4)哪个依赖有问题 就通过命令安装

作者成功较多的命令:

python -m pip install -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com XXX

XXX为所需依赖。

数据配置

(文末有分享所需文件)。

  1. 在此处下载Brainwash数据集,caffe预训练模型,以及人头检测模型
  2. 将预训练模型vgg16_caffe.pth放到./checkpoints/pre_trained目录下
  3. 将检测模型checkpoint_best.pth放到./checkpoints目录下
  4. 将brainwash数据集放到/home/dataset/fchd_datas目录下

当然你可以自定义各个路径,然后在config.py中修改相应的配置

class Config(object):
    DATASET_DIR = r'X:\workspace\python\FCHD-master\home\dataset\fchd_datas\brainwash'
    TRAIN_ANNOTS_FILE = r'X:\workspace\python\FCHD-master\home\dataset\fchd_datas\brainwash\brainwash_train.idl'
    VAL_ANNOTS_FILE = r'X:\workspace\python\FCHD-master\home\dataset\fchd_datas\brainwash\brainwash_val.idl'

    CAFFE_PRETRAIN = True
    CAFFE_PRETRAIN_PATH = './checkpoints/pre_trained/vgg16_caffe.pth'

    RPN_NMS_THRESH = 0.7
    RPN_TRAIN_PRE_NMS_TOP_N = 12000
    RPN_TRAIN_POST_NMS_TOP_N = 300
    RPN_TEST_PRE_NMS_TOP_N = 6000
    RPN_TEST_POST_NMS_TOP_N = 300
    RPN_MIN_SIZE = 16

    ANCHOR_BASE_SIZE = 16
    ANCHOR_RATIOS = [1]
    ANCHOR_SCALES = [2, 4]

    EPOCHS = 15
    PRINT_LOG = True
    PLOT_INTERVAL = 2
    VISDOM_ENV = 'fchd'

    MODEL_DIR = './checkpoints'
    BEST_MODEL_PATH = './checkpoints/checkpoint_best.pth'


cfg = Config()

代码还是简单的。

先训练:

  1. 打开可视化工具visdom:
    python -m visdom.server
    
  2. 开始训练:
    python train.py 

train.py的时候会报错:

AssertionError: Torch not compiled with CUDA enabled
 

这是torch依赖安装版本错误。

CPU直接安装CPU版本即可,CDUA需要安装CUXXX版本。

下载地址:https://download.pytorch.org/whl/torch_stable.html

也可以通过官网:https://pytorch.org/get-started/locally/

人头测试图_人脸识别检测

正确的控制台输出:

(venv) X:\workspace\python\FCHD-master>python train.py
[INFO] Load datasets.
 Training set size:10461, Verification set size:493
Setting up a new session...
[INFO] Start training...
X:\workspace\python\FCHD-master\networks\detector.py:30: UserWarning: Implicit dimension cho
ice for softmax has been deprecated. Change the call to include dim=X as an argument.
  probs = F.softmax(torch.from_numpy(rois_scores))
[INFO] Epoch 1 of 15.
        Validate average accuracy: 0.865
[INFO] Epoch 2 of 15.
        Validate average accuracy: 0.803
[INFO] Epoch 3 of 15.
        Validate average accuracy: 0.771
[INFO] Epoch 4 of 15.
        Validate average accuracy: 0.842
[INFO] Epoch 5 of 15.
        Validate average accuracy: 0.796
[INFO] Epoch 6 of 15.

可视化:

人头测试图_人脸识别检测

 

预测

在工程root目录下执行:

python predict.py -p [path of image]

检测效果

人头测试图_人脸识别检测

 

百度云:

链接:https://pan.baidu.com/s/1xZJ6wvQyo9WLgWErlmhhaA 
提取码:3bw9 
复制这段内容后打开百度网盘手机App,操作更方便哦

 

今天的文章人头测试图_人脸识别检测分享到此就结束了,感谢您的阅读。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/81710.html

(0)
编程小号编程小号

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注