大家好,继续理论学习,今天介绍几种最常见的特征提取算法。
1.LBP算法(Local Binary Patterns,局部二值模式)
LBP算子是一种用来描述图像局部纹理特征的算子,具有灰度不变性。
其主要思想是在目标像素周围定义一个3x3的窗口,以目标像素为阈值,将相邻的8个像素的灰度值与目标像素进行对比,如果大于目标像素,则标记为1,如果小于等于则标记为0。这样,对每一个窗口都可以产生一个8位的二进制数。这样就得到了目标像素的LBP值。
其基本步骤为:
(1)首先将检测图像划分为16×16的小区域(cell);
(2)对于每个cell中的一个像素,将相邻的8个像素的灰度值与其进行比较,若周围像素值大于中心像素值,则该像素点的位置被标记为1,否则为0。这样,3*3邻域内的8个点经比较可产生8位二进制数,即得到该窗口中心像素点的LBP值;
(3)然后计算每个cell的直方图,即每个数字(假定是十进制数LBP值)出现的频率。然后对该直方图进行归一化处理。
(4)最后将得到的每个cell的统计直方图进行连接成为一个特征向量,也就是整幅图的LBP纹理特征向量。然后便可利用SVM或者其他机器学习算法进行分类了。
2.HOG特征提取算法(Histogram of Oriented Gr