最近在看人羣密度估計方面的東西,把博客看到的一些方法簡單總結一下,後續繼續添加。git
1.論文《CrowdNet: A Deep Convolutional Network for DenseCrowd Counting》2015CVPRgithub
論文采用了兩個網絡(3x3和5x5)的融合,能夠理解爲不一樣的網絡提取的特徵不一樣,上面 Max Pool 對邊緣特徵(細節)提取較好,下面的 Shallow Net 採用 Avrg Pool 對於總體特徵描述較好,兩個網絡經過一個 concat 進行鏈接,而後1*1的conv進行降維。網絡
實驗結果代表多個網絡進行融合的方法要比單一的網絡融合效果要好。架構
網絡架構爲:ide
論文地址:https://arxiv.org/pdf/1608.06197v1.pdf函數
github地址:https://github.com/davideverona/deep-crowd-counting_crowdnetspa
2.論文《Single-Image CrowdCounting via Multi-Column Convolutional Neural Network》2016CVPR.net
論文也採用的是多個網絡架構融合的思想,分紅(5x5,7x7,9x9)三種網絡結構,最後再融合三個網絡的特徵圖,論文在各個數據集上都取得了state-of-the-art的效果。設計
多列架構的緣由是:三列對應於不一樣大小的感覺野(大,中,小),使每一個列卷積神經網絡的功能對因爲透視或不一樣的圖像分辨率形成的人/頭大小變化是自適應的(所以,總體網絡是強大的)。rest
網絡架構爲:
github地址(非官方):https://github.com/svishwa/crowdcount-mcnn
簡單梳理一下論文中2. Multi-column CNN for Crowd Counting關於生成密度圖時採用脈衝函數卷積高斯核的方式來定義密度圖。假設標註點的位置爲xi,那麼具備N個頭的標籤能夠被表示爲:
這裏把它與高斯函數作卷積變成一個連續的函數。可是這種密度函數假設每一個xi在圖像空間中是獨立的。然而事實上,每一個xi是在3D場景中一我的羣密度的樣本,而且因爲透視失真,不一樣樣本xi相關的像素與場景中區域的不一樣尺度一致。因而爲了精確估計羣體密度,須要考慮透視變換。若是假設在一我的頭區域的周圍,人羣的密度是均勻的,它的最近鄰給出了一個對於幾何形變的合理的估計。 爲了使得密度圖可以更好地與不一樣視角(不一樣人頭大小)且人羣很密的圖像對應起來,做者對傳統的基於高斯核的密度圖作了改進,提出了基於幾何適應高斯核的密度圖,由下式表示:
(通俗理解就是:密度圖是由delta脈衝函數與一個高斯函數卷積得來,這裏先卷積再求和。)
注:其實delta函數是一個簡單的脈衝函數,在範圍內積分求和值爲1,N我的頭再求和即得N我的頭的標籤;
對於每個人頭的xi點,給出了k個近鄰距離的的平均值di,因而,與xi相關的像素對應於場景中地面上的一個區域,這個區域的半徑與di成正比。因而,爲了估計像素xi周圍的人羣密度,爲咱們須要把H(x)卷積一個自適應的高斯核的,這個高斯核的的方差σi是可變的而且和di成比例。
總結就是把標籤H和一個自適應核的高斯核函數進行卷積,這個高斯核函數的方差爲β與xi的K個最近鄰平均距離的乘積。在程序中的體現就是從ground truth中提取xi點,作高斯卷積,高斯卷積的sigma是K=2時近鄰的平均距離。
(原文內容:Interesting we found that usually the head size is related to the distance between the centers of two neighboring persons in crowded scenes.因此實驗中K=2.)
3.論文《Switching Convolutional Neural Network for Crowd Counting》2017CVPR
針對人羣密度估計問題提出了一個 Switch-CNN網絡,大的思路就是根據圖像塊的內容信息來選擇合適的CNN網絡進行人羣密度估計。
首先將圖像分紅3*3=9 個圖像塊,而後使用一個 CNN網絡對每一個圖像塊進行分類,看它適合使用哪一個CNN網絡來進行密度估計,這裏提供了3個CNN網絡來進行密度估計。
對於圖像中的人羣密度,有的區域密度大,有的區域密度小,這裏咱們對圖像進行分塊處理。
Switch-CNN網絡架構:
這裏的三個CNN網絡設計R1,R2,R3 和 第二篇CVPR2016年論文中的 MCNN 是同樣的。 對於 switch classifier 咱們以 VGG16網絡爲基礎
github地址:https://github.com/val-iisc/crowd-counting-scnn
看到一篇很是nice的博客:http://m.blog.csdn.net/u011285477/article/details/51954989