对于在图像中的任何物体,要检测出它,必须要得到一种东西,使之和其他物体分别开了。这种东西,在图像处理中叫做特征,这个理解我想是应该考虑到特征的类型啦。例如 颜色,灰度值,纹理,轮廓,而真正到到图像处理级别的就是特征向量,即这些特征的数学表达形式,如谈到纹理,可以用距的方式表达。既然特征能够将物体和其他东西分辨出来,如何组织他们呢,用adaboost是一种很好的组织方法。
adaboost 是 adaptive boost的缩写。他是一种分类器,他的思想是如果一种东西用一个特征分不开,那么将几个特征组合起来好了,这样就可以得到逐渐增强的分类器啦。所以adaboost是由若干个弱分类器组和这成的。大家好像有种疑问,刚才说特征,怎么现在又说分类器,他们有什么联系和区别呢? 呵呵,这里我打个比方,特征就好像是猪肉,而分类器就好像是做猪肉的方法。那么有好的猪肉,有时候,不用太强的方法也吃着爽口,但是如果猪肉都一样,那就看谁的手段高明啦。
我们都知道在haar小波特征的东西。那个特征就是所说的‘猪肉’啦。但是在向前的发展中,人们发现如果将物体的其他特征融合在一起,就应该得到更好的分类器啦。也就是提高猪肉的质量啦。刚才谈到的纹理和边缘,也是特征。如果将他们融入到分类器中,也是好的方法啦。比如说把,对物体轮廓,可以得到一种物体通用的轮廓作为特征。那么可以得到良好的检测效果,这里简单提一下。后面要详细介绍啦。而弱分类器是什么呢? 我想他是一种简单的分类方法,这种方法规则可以简单,或者说是弱,其含义是他分类能力不是很强,一般,比如说,线性的分类器就可以了。那么为啥必须有一个弱的呢? 你用SVM的,或者其他的非线性不是也可以吗? 话是这样说,也有这样做的,但是我认为在实际应用中,还要考虑到速度和复杂度啊,如果也可以达到要求,何必用费力气的呢?
那么,下面就看看如何将弱分类器组合成强分类器呢?简单说是由T个弱分类器线性组合=而成。 这个过程我想是最优过程。要达到分类正确率最优。这种正确率最优是一种每个样本的权重最优。此权重对应每个样本,表明该样本的容易分类程度。越是容易分类的,权重越低,越是不容易分类的权重越高。比如物体样本和非物体样本,特征有K维,如果每维都有一个弱分类器。用T次循环,每次得到一个特征,使得这个特征对应的分类器的分类正确率最高。而这个能力是他在组和成强分类器的权重。另外对应每个样本,也有一个权重,这个权重是他容易分类的权重,该权重会在每次循环后都更新一遍。以使得分类器的重心从容易分类的样本向不容易分类的样本转移。T此循环之后就得到了T个弱分类器,他们的权重组合就是强分类器啦。
下回我想谈谈选择什么特征和对应的弱分类器能够解决物体检测中的旋转,缩放,角度变化的问题...
(转载:yxgeng的blog http://www.china-vision.net/blog/user2/15769/20091719459.html)