KDE核密度估计(使用Ep函数)
2019-10-13 本文已影响0人
一技破万法
随着计算机视觉、模式识别、机器人技术和自动化技术的发展,视觉图像系统在各个领域都得到了广泛的应用,而应用的前提首先是对环境中的特定目标做出准确检测。本文介绍了基于Epanechnikov核函数的核密度估计方法进行初步的前景检测。
什么是核密度估计
核密度估计就是估计概率密度函数,从几个样本估计其服从的分布,即求出其概率密度函数,这样就可以求任意区间处的概率了。所以核密度就是一个从具体样本到普遍概率密度的过程,然后再用普遍指导具体的问题。
核密度估计函数的公式如下表示:
![](https://img.haomeiwen.com/i15145168/fbcbf783010ea6da.png)
其中Kh为核函数,H为d*d大小的正定带宽矩阵。当简化带宽矩阵为单参数h时,则公式如下:
![](https://img.haomeiwen.com/i15145168/2914282598e6cb4a.png)
对于多维变量的核函数可以通过每个维度下单变量和函数的乘积来表示。
使用Ep函数
在i时刻时,我们将位于某坐标(x,y)处的像素点与数据集中所有图像在该坐标点的像素点带入密度函数的核密度估计中去,可得如下公式:
![](https://img.haomeiwen.com/i15145168/e122bd6d57d57020.png)
其中K为选择的核函数,满足性质K(t)>=0和K对时间t的积分为1.
由于图像帧一般是多通道彩色图像,所以样本点都是多维向量,将d维颜色通道的核函数用每个色彩通道的核函数乘积(上文提到)表示,如下图公式所示:
![](https://img.haomeiwen.com/i15145168/22e8dcfc3ea5fa9b.png)
单维度Epanechnikov函数表示如下:
![](https://img.haomeiwen.com/i15145168/828e719493fad712.png)
其中Cd表示d维超球体体积,对于三维来说C3就是半径为1的球体体积。此时像素输入Xt,样本点为Xi,基于Ep函数的三通道彩色图像像素值的概率密度估计函数为:
![](https://img.haomeiwen.com/i15145168/701722a83b3b5139.png)
我们指定Th为一个小鱼1的阈值与计算得到的估计值进行比较决策,低于此阈值的像素点为褐色表示前景,反之为白色表示背景。当所有像素点都通过决策之后,便生成了一副二值检测图像。
![](https://img.haomeiwen.com/i15145168/9e4fb9b62d9128d8.png)
最后附上效果图:
![](https://img.haomeiwen.com/i15145168/aa3e9ed95ce871d3.png)
三维KDE估计图
![](https://img.haomeiwen.com/i15145168/069aac001e184f34.png)
本程序是基于python 3.5.2,使用的库有numpy|math|matplotlib|opencv|mpl_toolkits等
如果有不明白的可以关注作者微信公众号并私信问题:
![](https://img.haomeiwen.com/i15145168/5a4034c6fec9a6b7.jpg)