算法简介

人头检测在视频监控中非常重要,而公交车、商场或者大型场馆的拥挤人群计数则是其重要应用场景。

算法思想

作者称拥挤人群计数目前主要有两种实现路径:

1.使用回归的算法思路,直接根据图像回归出拥挤人群密度热图,它的缺点是只能得到场景整体的一个拥挤指数,不能获知人群个体的具体位置,而且这种方法对图像分辨率很敏感。

2.使用目标检测的方法,比如直接使用Faster RCNN检测人,检测后数目标为“人”的个数。这种方法的缺点是在人物相互遮挡的情况下往往性能较差,而人群越拥挤相互遮挡的可能性越大,导致算法使用受限。

该文作者希望设计更有针对性的精准的人头检测,实现更加精准的人群计数。

论文地址:https://arxiv.org/abs/1809.08766v1
代码地址:https://github.com/aditya-vora/FCHD-Fully-Convolutional-Head-Detector

错误展示

使用论文《FCHD: A fast and accurate head detector 》提供的代码进行人头识别,代码的部署过程很简单,但是就是最后预测出来的效果有错误。

在运行head_detector_demo.py的时候,出来的结果如下图所示,每一个人头都能够预测出来,检测窗口基本上能够对应人物头部,但是窗口位置偏移距离比较远。

解决方法

打开head_detector_demo.py文件
大约在28行的位置上做出如下修改:

f.convert('RGB')
img_raw = f.copy()
# img_raw = np.asarray(f, dtype=np.uint8)
img = np.asarray(f, dtype=np.float32)
_, H, W = img.shape
img = img.transpose((2,0,1))
img = preprocess(img)
_, o_H, o_W = img.shape
scale = o_H / H
img_raw = img_raw.resize((o_W, o_H), Image.ANTIALIAS)
return img, img_raw, scale

在大约54行的位置上,做出如下修改:

for i in range(pred_bboxes_.shape[0]):
ymin, xmin, ymax, xmax = pred_bboxes_[i,:]
# utils.draw_bounding_box_on_image_array(img_raw, ymin, xmin, ymax, xmax)
utils.draw_bounding_box_on_image(img_raw, ymin, xmin, ymax, xmax)

将代码修改之后,再次运行head_detector_demo.py文件,可以看到出来的图已经正确了,如下图:

参考链接:https://github.com/aditya-vora/FCHD-Fully-Convolutional-Head-Detector/issues/8

FCHD: A fast and accurate head detector快速准确的人头检测代码预测出来的边界框位置不准确的解决方法相关推荐

  1. 快速精准的人头检测,代码已开源

    点击我爱计算机视觉标星,更快获取CVML新技术 昨天arXiv一篇新上论文<FCHD: A fast and accurate head detector >,来自江森自控(Johnson ...

  2. 快速下载 arXiv论文(arXiv PDF论文下载缓慢及中国镜像更新不及时解决方法)

    - 背景 arXiv (https://arxiv.org/)是一个收集计算机科学.物理学.数学和生物学等多个学科的论文预印本网站,主站点在康奈尔大学,在全球多个地方设置有镜像网站. 国内由于某些限制 ...

  3. python实现目标识别眼镜_用Python快速实现YOLO目标检测

    文章也同步更新到微信公众号:R语言和Python学堂想获取本文完整代码和数据的下载链接,可关注微信公众号"R语言和Python学堂",并回复发文日期"20181223&q ...

  4. Fast R-CNN解读:单阶段,多任务完成检测

    Title: Fast R-CNN(2015) Link: paper , code Tips: R-CNN and SPPnet 的缺点以及 Fast R-CNN 的优点(1.1) Fast R-C ...

  5. Fast and Accurate CNN Object Detector with Scale Dependent Pooling and Cascad Rejection Classifiers

    论文的题目是<Exploit All the Layers: Fast and Accurate CNN Object Detector with Scale Dependent Pooling ...

  6. The genome polishing tool POLCA makes fast and accurate corrections in genome assemblies

    The genome polishing tool POLCA makes fast and accurate corrections in genome assemblies  基因组抛光工具POL ...

  7. Fast and accurate short read alignment with Burrows-Wheeler transform

    Fast and accurate short read alignment with Burrows-Wheeler transform 快速和准确的短读对准Burrows-Wheeler变换 本文 ...

  8. 消失点:Fast and Accurate Vanishing Point Detection in Complex Scenes

    消失点:Fast and Accurate Vanishing Point Detection in Complex Scenes 1.韦伯定律 1.1 WLD 1.2 WOD 算法实现 获得WOD ...

  9. 【CVPR2020视频超分辨率】Zooming Slow-Mo: Fast and Accurate One-Stage Space-Time Video Super-Resolution 阅读笔记

    paper:Zooming Slow-Mo: Fast and Accurate One-Stage Space-Time Video Super-Resolution code:Zooming-Sl ...

最新文章

  1. 清北2021毕业生就业报告出炉!清华博士0人出国,70%进体制
  2. 数据蒋堂 | 人工智能中的“人工”
  3. 由“深”至“广”,探索2022音视频技术的无限可能
  4. 不同sheet 选择若干条件_干货 | 不同加工条件下如何正确选择铣刀
  5. This file can not be opened as a file descriptor; it is probably compressed
  6. Visual Studio Code的用户设置相关
  7. Failed to capture snapshot of output files for task ':UserAppModule:packagePreDebug' property 'outpu
  8. 巧用Dictionary实现日志数据批量插入
  9. java打印已经被加载的类_使用URLClassLoader加载类,不会报错,但被加载类中的内容也没有打印出来...
  10. Mybatis-Plus 使用自定义注入器后,查询条件中不再添加逻辑删除字段限定条件
  11. 2017.4.23 税收与补贴问题 思考记录
  12. php更新不了数据库,为什么我不能使用PHP编辑/更新数据库?
  13. 网络安全分析 | 用OpenFEA定位WebShell木马后门
  14. VBScript函数
  15. php 发送网络命令,linux命令经典用法与配置收录
  16. Yii1.0框架整合融云解析(一)
  17. 程矢Axure夜话:Axure手机原型视频教程之图形解锁
  18. AppWeb认证绕过漏洞(CVE-2018-8715)
  19. 不想重置路由器,如何由已连接设备快速获取wifi密码?
  20. 道阻且长 行者将至 ——新高考下的教学策略

热门文章

  1. Pytorch使用VGG做迁移学习(基于 CIFAR100 数据集)
  2. Spring Boot开发介绍
  3. c# 获取两个时间之间的时间差
  4. cpu功能解析,cpu功能作用与其工作过程
  5. 适用的验厂考勤工资AB账系统软件这样选择
  6. 离子交换树脂过滤重金属
  7. 本机不装Oracle,远程访问服务器上Oracle教程
  8. 【智能商业】看十年·曾鸣书院公开课:未来的商业是智能商业
  9. php ziparchive(),PHP: ZipArchive - Manual
  10. 【neotic-moveit】CHOMP Planner