密度图表现与数据值对应的边界或域对象的一种理论图形表示方法。一般用于呈现连续变量。
摘自百度百科
在计算机科学当中,数据的可视化常常被提起。近日,在图像处理当中,需要统计图片中的人流密度并绘制相应密度图,于是小小研究一番。效果如下:
所有代码保存在Github上。
首先需要一张颜色表,从上至下分别表示密度多少时颜色的深浅。在我的程序当中,颜色表保存在map.mat当中。颜色表下载链接:
链接: https://pan.baidu.com/s/13P7uqw9Q0Kc8wPyhORRQkw 提取码: dqm6
接下来就是求密度了。当获得了人头的位置之后,我们可以假设光线从头的四周向外发射,光强度分布服从二维高斯分布。这样,某点的光强 T = e k ∗ d i s R T=e^{k* \frac{dis}{R}} T=ek∗Rdis
其中,k是小于0的常数,R是高斯分布的半径,dis为人头到当前点的距离。当dis=0,也就是当前点处在人头中心时,T取最大值1.
将所有人头的密度累加,与颜色表一一对应,就得到了密