计算机视觉中的特征提取

LBP(local binary pattern)

简单介绍

是一种用来描述图像局部纹理特征的算子。

  • 将中心像素点A的值与其最临近的8个像素点的值逐个比较
    • 若A大于其临近点的像素值,则得到0。
    • 若A小于其临近点的像素值,则得到1。
  • 最后,将所得到的8个0或1的值连起来。
  • 得到一个8位的二进制序列。
  • 将该二进制序列转换为十进制数作为A的LBP值

计算过程

pCngoZj.png

pCngqJ0.png

原始的LBP不具有旋转不变性,这样我们就提出了旋转不变的LBP模式。

pCn2pw9.png

pCn2PF1.png

HOG

推荐博客1

方向梯度直方图(Histogram of Oriented Gradient, HOG)特征是一种在计算机视觉和图像处理中用来进行物体检测的特征描述子。它通过计算和统计图像局部区域的梯度方向直方图来构成特征。

HOG算法的基本思想是提取图像局部区域的梯度方向信息,并利用这些信息来描述图像的外观特征。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
HOG算法的基本思想是提取图像局部区域的梯度方向信息,并利用这些信息来描述图像的外观特征。具体来说,HOG算法包括以下几个步骤:

图像预处理: 首先对图像进行预处理,包括灰度化、归一化等操作,以便后续处理。

计算梯度: 对图像进行梯度计算,常用的方法是利用Sobel算子或Prewitt算子来计算图像中每个像素点的梯度幅值和方向。

划分单元格: 将图像划分为若干个单元格(Cell),通常选择较小的尺寸,比如8x8像素。每个单元格内的像素梯度方向信息将用于后续的特征提取。

计算单元格内的梯度直方图: 对每个单元格内的像素梯度方向信息进行统计,生成该单元格的梯度直方图。通常,将梯度方向划分为若干个方向区间(一般为9个),并统计每个方向区间内的梯度强度。

块归一化: 将图像划分为若干个块(Block),每个块由多个相邻的单元格组成。对每个块内的梯度直方图进行归一化处理,目的是增强对光照和阴影的鲁棒性。

特征向量的拼接: 将所有块内的归一化梯度直方图拼接成一个特征向量,作为最终的图像特征表示。

通过上述步骤,HOG算法可以有效地提取图像的局部纹理和形状信息,形成一个用于目标检测和图像分类的高维特征向量。这些特征向量通常会输入到支持向量机(SVM)等分类器中进行训练和分类。HOG算法在行人检测、车辆检测等领域取得了很好的效果,并成为目标检测领域的经典算法之一。