EM算法在直线分类与灭点检测中的应用(关于一篇文章的读后感)

EM算法在机器学习领域有着重要的应用,其根本上要解决的问题即为是先有鸡还是先有蛋的问题;LZ最近在看EM算法在直线分类与灭点检测中的应用;翻阅了不少文献,主要参考MIT的Automatic Recovery of Relative Camera Rotation for Urban Scenes,链接如下http://biorobotics.ri.cmu.edu/papers/sbp_papers/a/cvpr2000_arrcrus.pdf,翻阅了几篇关于EM在直线分类与灭点检测中的应用,也就数此篇讲述较为详细。以下为小白对于此篇文章中介绍到到的算法进行分析与理解。 顾名思义,算法分为3部分,第一步为E步骤,按照字面上理解E步骤应该是期望(Expection)的意思,然而在直线分类灭点检测中并不能够直接的看到E步骤中有期望的意思,若是要追溯到期望,参考以下两篇文章http://blog.csdn.net/zouxy09/article/details/8537620 http://www.cnblogs.com/jerrylead/archive/2011/04/06/2006936.html 第二步即为M步骤,即为最大(Maximition),同样的可以在以上两篇文章中找到答案;初始化也十分的重要;以下给出具体的步骤。  

1.E step E步骤假设已经灭点的向量(考虑到外点的存在,所以此处假设为多个灭点,一般应该为4个灭点)以及与之相联系的概率,另外还有

高斯函数的方差。有了这些参量之后,对于所有的直线以及所有的灭点我们都可以进行下面的计算:,其中通过寻找下列矩阵的最大的特征值来得到,其中为边缘的协方差,表示协方差阵在上的投影。至此,得到了,此结果将在下述表达中用到。根据计算得到的,我们进行下列计算,这个表达式在数学上表示在发生的条件下,发生的概率,根据原文的叙述,这一步骤为对于直线进行classification的关键步骤,因为原文对于这一表达式给出的解释是每一个属于的概率,看起来事件的先后顺序有颠倒,这一点有待理解;那么分类的关键应该就是对于每一条直线,根据它的选择最大的那一个就可以对于这条直线属于哪一个灭点找到明确的答案。以上表示分类的步骤。
2.M step
对于直线分类完了之后,我们再次计算灭点的坐标,还记得在E step中我们已经假设了灭点的坐标,此步骤主要是对于灭点的坐标进行调整;要知道我们最终达到的目的是完成对于直线的分类,而这些直线已经全部检测到,并且位置不能够改变,而灭点的位置是不确定的,对于直线的属性的不确定性就是分类问题,对于灭点的不确定性就是位置问题。如果E步骤完成了对于直线的分类的话,那么M步骤可想而知将根据分类的直线对于灭点进行检测(此处分类的直线应该是所有的直线,只不过某条直线距离某个灭点比较大的话,该直线权重比较大,这一点在下面将会看到)。
调整,以及重新求取灭点的坐标值,即通过对于的SVD分解,求取最小奇异值对应的特征向量。为包含权重为对角元素的对角矩阵,的行向量为直线的向量。注意到我们M步骤修改的参量即为E步骤需要的值,也即初始化的值,上述的应该求取至少4次,因为需要知道4个灭点,而要知道对于同一条直线,不同的灭点的权重是不一样的,所以应该至少得到4个不同的值。

初始化
初始化用到了一些霍夫变换之类的东西,中间看到这样一句话,讲的是直方图中的极值点对应EM算法中的灭点,大概是对于直线的方向进行统计,然后对于灭点初始化。同样可以参考另外一篇文章,但是没有上述推荐的两篇文章讲的详细:http://xueshu.baidu.com/s?wd=paperuri%3A%289a32a6802b4514e9b7a9344e8726ce7f%29&filter=sc_long_sign&tn=SE_xueshusource_2kduw22v&sc_vurl=http%3A%2F%2Fciteseerx.ist.psu.edu%2Fviewdoc%2Fdownload%3Bjsessionid%3DCB7E0066B92E5409AC08C8B64F0C5610%3Fdoi%3D10.1.1.91.5186%26rep%3Drep1%26type%3Dpdf&ie=utf-8
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值