20.方差/标准差/数学期望/正态分布/高斯函数(数学篇)--- OpenCV从零开始到图像(人脸 + 物体)识别系列


本文作者:小嗷

微信公众号:aoxiaoji

吹比QQ群:736854977


本文你会找到以下问题的答案:

  1. 方差
  2. 标准差
  3. 数学期望
  4. 正态分布
  5. 高斯函数

2.1 方差

方差描述随机变量对于数学期望的偏离程度。(随机变量可以看成随机像素点)

两人的5次测验成绩如下:(X,Y代表2个人,E(X)代表平均分)

X: 50,100,100,60,50 E(X)=72;
Y: 73, 70, 75,72,70 E(Y)=72。

平均成绩相同,但X 不稳定,对平均值的偏离大。

公式如下:

平均数:

方差公式:

用途:环境的不确定因素波动小,稳定性好,识别的成功率越高。即:方差越小越稳定 (方差越大则波动越大)

2.2 标准差

方差是数据的平方,与检测值本身相差太大,难以直观的衡量,所以常用方差开根号换算回来,也就是标准差。

同理,方差开个根号之后,更加直观看出数据本身的离散程度(波动大小)

如上图为误差 + 平均差 + 标准差

还记得均值滤波,在矩阵内的像素点波动大的时候,均值就更加不靠谱了,振铃效应也就越明显。

比如一个班男生的平均身高是170cm,标准差是10cm,那么方差就是100cm^2。可以进行的比较简便的描述是本班男生身高分布是170±10cm,方差就无法做到这点。

如果标准差大的话,我们是否可以考虑这附近可能有边缘,波动大代表我们矩阵均值赋予的像素值不靠谱?(这点也是小嗷突发奇想)

看不懂我写什么,请看回我卷积那篇,应该是上上篇。

2.3 数学期望

某城市有10万个家庭,没有孩子的家庭有1000个,有一个孩子的家庭有9万个,有两个孩子的家庭有6000个,有3个孩子的家庭有3000个。

则此城市中任一个家庭中孩子的数目是一个随机变量,记为X。它可取值0,1,2,3。

其中,X取0的概率为0.01(没孩子的概率),取1的概率为0.9(1个孩子的概率),取2的概率为0.06(2个孩子的概率),取3的概率为0.03(3个孩子的概率)。

则,它的数学期望

E(x) = 0 x 0.01 + 1 x 0.9 + 2 x0.06 + 3 x 0.03 = 1.11

公式如下:

即此城市一个家庭平均有小孩1.11个。

2.4 正态分布

正态分布需要用到:数学期望为μ,方差为σ^2。

若随机变量X服从一个数学期望为μ、方差为σ^2的正态分布,记为N(μ,σ^2)。其概率密度函数为正态分布的期望值μ决定了其位置,其标准差σ决定了分布的幅度。下图为正态分布图:

公式如下:

当μ = 0,σ = 1时的正态分布是标准正态分布。

标准正态分布公式如下:

由于“小概率事件”和假设检验的基本思想 “小概率事件”通常指发生的概率小于5%的事件,认为在一次试验中该事件是几乎不可能发生的。由此可见X落在(μ-3σ,μ+3σ)以外的概率小于千分之三,在实际问题中常认为相应的事件是不会发生的,基本上可以把区间(μ-3σ,μ+3σ)看作是随机变量X实际可能的取值区间,这称之为正态分布的“3σ”原则。

某些医学现象,如同质群体的身高、红细胞数、血红蛋白量,以及实验中的随机误差,呈现为正态或近似正态分布;有些指标(变量)虽服从偏态分布,但经数据转换后的新变量可服从正态或近似正态分布,可按正态分布规律处理。其中经对数转换后服从正态分布的指标,被称为服从对数正态分布。

即:很多随机变量的概率分布都可以近似地用正态分布来描述。

正态分布曲线及面积分布图非常清晰的展示了重点,那就是基区占68.27%,是主体,要重点抓,此外95%,99%则展示了正态的全面性。认识世界和改造世界一定要住住重点,因为重点就是事物的主要矛盾,它对事物的发展起主要的、支配性的作用。抓住了重点才能一举其纲,万目皆张。事物和现象纷繁复杂,在千头万绪中不抓住主要矛盾,就会陷入无限琐碎之中。由于我们时间和精力的相对有限性,出于效率的追求,我们更应该抓住重点。在正态分布中,基区占了主体和重点。如果我们结合20/80法则,我们更可以大胆的把正区也可以看做是重点。

注意:我们在后面深度学习,是否能根据正态分布,让程序抓重点,自动识别这是条狗?而不是通过训练。

正态分布(Normal distribution),也称“常态分布”,又名高斯分布(Gaussian distribution)

2.5 高斯函数

一维高斯函数:

a表示得到曲线的高度,b是指曲线在x轴的中心,c指width(与半峰全宽有关),图形如下:

2、根据一维高斯函数,可以推导得到二维高斯函数:

在图形上,正态分布是一种钟形曲线,越接近中心,取值越大,越远离中心,取值越小。
计算平均值的时候,我们只需要将”中心点”作为原点,其他点按照其在正态曲线上的位置,分配权重,就可以得到一个加权平均值。例如:通常,图像处理软件会提供”模糊”(blur)滤镜,使图片产生模糊的效果。

第三张图

数据平滑技术(data smoothing),适用于多个场合,图像处理恰好提供了一个直观的应用实例。

高斯模糊的原理

所谓”模糊”,可以理解成每一个像素都取周边像素的平均值。

上图中,2是中间点,周边点都是1。

“中间点”取”周围点”的平均值,就会变成1。在数值上,这是一种”平滑化”。在图形上,就相当于产生”模糊”效果,”中间点”失去细节。

显然,计算平均值时,取值范围越大,”模糊效果”越强烈。

上面分别是原图、模糊半径3像素、模糊半径10像素的效果。模糊半径越大,图像就越模糊。从数值角度看,就是数值越平滑。

接下来的问题就是,既然每个点都要取周边像素的平均值,那么应该如何分配权重呢?

如果使用简单平均,显然不是很合理,因为图像都是连续的,越靠近的点关系越密切,越远离的点关系越疏远。因此,加权平均更合理,距离越近的点权重越大,距离越远的点权重越小。

正态分布的权重

正态分布显然是一种可取的权重分配模式。

在图形上,正态分布是一种钟形曲线,越接近中心,取值越大,越远离中心,取值越小。

计算平均值的时候,我们只需要将”中心点”作为原点,其他点按照其在正态曲线上的位置,分配权重,就可以得到一个加权平均值。

高斯函数

上面的正态分布是一维的,图像都是二维的,所以我们需要二维的正态分布。

高斯函数”(Gaussian function)。它的一维形式是

其中,μ是x的均值,σ是x的方差。因为计算平均值的时候,中心点就是原点,所以μ等于0。

根据一维高斯函数,可以推导得到二维高斯函数

有了这个函数 ,就可以计算每个点的权重了。

权重矩阵

假定中心点的坐标是(0,0),那么距离它最近的8个点的坐标如下:

更远的点以此类推。

为了计算权重矩阵,需要设定σ的值。假定σ=1.5,则模糊半径为1的权重矩阵如下:

这9个点的权重总和等于0.4787147,如果只计算这9个点的加权平均,还必须让它们的权重之和等于1,因此上面9个值还要分别除以0.4787147,得到最终的权重矩阵。

计算高斯模糊

有了权重矩阵,就可以计算高斯模糊的值了。

假设现有9个像素点,灰度值(0-255)如下:

每个点乘以自己的权重值:

将这9个值加起来,就是中心点的高斯模糊的值。

对所有点重复这个过程,就得到了高斯模糊后的图像。如果原图是彩色图片,可以对RGB三个通道分别做高斯模糊。

2.5.1 高斯(核)函数简介(这个上上篇写了,现在在写写)

函数的基本概念

所谓径向基函数 (Radial Basis Function 简称 RBF), 就是某种沿径向对称的标量函数。 通常定义为空间中任一点x到某一中心xc之间欧氏距离的单调函数 , 可记作 k(||x-xc||), 其作用往往是局部的 , 即当x远离xc时函数取值很小。最常用的径向基函数是高斯核函数 ,形式为 k(||x-xc||)=exp{- ||x-xc||^2/2*σ^2) } 其中xc为核函数中心,σ为函数的宽度参数 , 控制了函数的径向作用范围。

高斯函数具有五个重要的性质,这些性质使得它在早期图像处理中特别有用.这些性质表明,高斯平滑滤波器无论在空间域还是在频率域都是十分有效的低通滤波器,且在实际图像处理中得到了工程人员的有效使用.高斯函数具有五个十分重要的性质,它们是:

  1. 高斯函数是单值函数,高斯滤波使用像素邻域加权均值来代替该点的像素值,像素权重会随着距离的变化而单调递减,以此来减少失真现象。

  2. 高斯函数具有旋转对称性,高斯滤波在各个方向上的平滑程度是相同的,对于存在的噪声很难估计其方向性,保证平滑性能不会偏向任何方向。

  3. 高斯函数的傅里叶频谱是单瓣的,使得平滑图像不会被不需要的高频信号所影响,同时保留了大部分所需要的信号。

  4. 高斯滤波的平滑程度是由方差σ决定的,σ越大,频带也就越宽,从而平滑的程度也就越大,对于图像中的噪声有可以控制的参数进行设置。

  5. 高斯函数具有可分离性,二维高斯函数卷积可以分为两步来进行,首先将图像和一维高斯函数进行卷积运算,然后将卷积结果和方向垂直的相同一维高斯函数进行卷积。

高斯函数参考资料:

http://www.ruanyifeng.com/blog/2012/11/gaussian_blur.html

http://www.cnblogs.com/pzxbc/archive/2012/02/14/2351708.html

http://baike.baidu.com/view/1097446.htm?fr=aladdin

  1. 本人是抱着玩一玩的心态,学习opencv(其实深度学习没有外界说的这么高深,小嗷是白板,而且有工作在身并且于代码无关)
  2. 大家可以把我的数学水平想象成初中水平,毕竟小嗷既不是代码靠吃饭又不是靠数学吃饭,毕业N年
  3. 写文章主要是为了后人少走点弯路,多交点朋友,一起学习
  4. 如果有好的图像识别群拉我进去QQ:631821577
  5. 就我一个白板,最后还是成的,你们别怕,慢慢来把

分享可以无数次,转载成自己文章QQ邮箱通知一下,未经授权请勿转载。

  • 邮箱:[email protected]
  • QQ群:736854977
  • 有什么疑问公众号提问,下班或者周六日回答,ths

最近,很多人问我工作做什么,什么学历(研究生/老板/嵌入式工作者/准备转业也有,总之千奇百怪的人都有)。我认为每个自学者不分贵贱,工作什么,什么学历不重要。

时间是公平的,人也就一辈子,大家有机会聚在一起学习分享也是一种缘分。而且,小嗷既不是代码靠吃饭又不是靠数学吃饭,毕业N年。大家想想就知道,我代码和数学水平是多么渣渣。

像我这么渣,都能懂,难道你们这么优秀还不懂?当然,也有可能,我写不好误导各位造成的,所以,也希望大家勇于发言,给小嗷一个改正的机会。

推荐文件:

11.VS2015+OpenCV3.2+QT软件/插件(QT篇1) — OpenCV从零开始到图像(人脸 + 物体)识别系列

12.QT + OpenCV打包成应用(以及QT图标问题详细) — OpenCV从零开始到图像(人脸 + 物体)识别系列

你可能感兴趣的:(OpenCv,-)