zoukankan      html  css  js  c++  java
  • paper reading in this week

      ICCV2015:COUNT Forest: CO-voting Uncertain Number of Targets using Random Forest for Crowd Density Estimation

      这篇文章提出patch-based的方法,先学习提取的patch-level features和该patch内包含的object的相对位置的关系,这些相对位置实际上是patch中心指向object的矢量,矢量的个数被认为是该patch的label,也即该patch隶属或包含的人数。如左图所示,提取一个patch的feature后,在一棵树上被分类到一个叶子里,这个叶子里可能包含多个feature向量,他们彼此也很接近;如右图所示,取相同label数最大的作为本patch的label K,并取label数为K的向量做K-means生成本patch的displacement vector。

          

      所以当新patch的feature到来时,将会在这棵树上得到对应的label和displacement vector。然后由这两只可以计算Gaussian kernel,生成对应label数的density map。

      RF的主要作用是做决策,压缩错误,减少计算量。细节不表,流程如下,看懂需耐心~

      

      文章还提到了人群密度稀疏和拥挤两种情况下的先验不同,训练了对应的prior。但究竟是如何将density 映射到count,文章简单提到是computed as the sum of estimated densities over the whole image(不太理解)这大概是为什么文章名为Crowd Density Estimation可是很好奇文章为什么不在这一块展开呢?如果密度图生成了,下一步是不是可以把location的信息提取出来?毕竟文章的目标很明确的说出来了:

       

       文章第一个训练思路挺有趣的,整棵树的分类节点都是以feature为依据的,最后在叶子节点中存储对应的label displacement vector。所以实际上是在学patch的feature和label的displacement feature之间的关系:

                

       这和之前CVPR13(CA-RR)那篇一样,也不是直接去学习feature到count,而是先学到了label,然后生成 Density Estimation,最后得到count。效果很好的说:

      

  • 相关阅读:
    gc buffer busy/gcs log flush sync与log file sync
    给Oracle年轻的初学者的几点建议
    Android 编程下帧动画在 Activity 启动时自动运行的几种方式
    Android 编程下 Touch 事件的分发和消费机制
    Java 编程下 static 关键字
    Java 编程下 final 关键字
    Android 编程下模拟 HOME 键效果
    Why Are Thread.stop, Thread.suspend, Thread.resume and Runtime.runFinalizersOnExit Deprecated ?
    Extjs4 大型项目目录结构重构
    [转]SQLServer 2008 允许远程连接的配置方法
  • 原文地址:https://www.cnblogs.com/xy2012/p/5112411.html
Copyright © 2011-2022 走看看