认知篇#12:基于非深度学习方法的图像特征提取
一、前言
有一个问题一直困扰着我,在机器学习发展之前,图像处理是依靠什么手段的呢?我们该怎样去提取图像的特征并进行修改呢,这有点像P图,确实值得深究。
图像特征提取是计算机视觉中的重要任务,用于从图像中提取具有辨识性的局部信息,这些信息通常可以用于匹配、分类、目标跟踪等任务。常见的特征提取方法包括 SIFT、SURF、ORB 等,它们各自有不同的原理和效果。
二、特征提取方法
1. SIFT (Scale-Invariant Feature Transform)
原理:
- SIFT 是一种尺度不变的特征提取方法,通过多尺度的高斯金字塔来查找不同尺度下的关键点,并使用这些关键点的邻域区域提取描述符。
- 步骤:
- 关键点检测:通过检测图像中的极值点,找到稳定的特征点,这些点在尺度空间中具有不变性。
- 方向赋值:为每个关键点分配一个主方向,使得该特征在旋转变换下也能保持不变。
- 描述符计算:通过计算关键点邻域的梯度信息,生成一个特征描述符,具有旋转、尺度、仿射等不变性。
效果:
- SIFT 在图像旋转、尺度变化、光照变化等情况下具有良好的不变性,能够提取出对场景识别和匹配非常有用的特征。
- 然而,由于其计算量较大,速度较慢,不适合实时应用。
2. SURF (Speeded-Up Robust Features)
原理:
- SURF 是对 SIFT 的改进,主要通过加速计算过程来提高处理速度。SURF 使用 Haar-like 特征 来近似计算图像的 Hessian 矩阵,从而快速检测和描述图像的特征点。
- 步骤:
- 特征点检测:使用 Hessian 矩阵来检测尺度空间中的关键点,并通过快速的积分图计算提高效率。
- 方向赋值:类似于 SIFT,SURF 也会为每个关键点计算主方向,确保旋转不变性。
- 描述符计算:利用关键点周围的 Haar 特征来计算描述符,比 SIFT 更加高效。
效果:
- SURF 计算速度比 SIFT 更快,但仍然保持较好的鲁棒性。
- 适用于需要处理大规模图像或进行实时应用的场景,但由于其使用的专利技术,在一些商业应用中可能需要支付许可费用。
3. ORB (Oriented FAST and Rotated BRIEF)
原理:
- ORB 是基于 FAST(Features from Accelerated Segment Test) 关键点检测算法和 BRIEF(Binary Robust Independent Elementary Features) 描述符的组合,提出了一种高效且能适应旋转的特征提取方法。
- FAST:是一种快速的角点检测算法,能够有效地检测到图像中的角点特征。
- BRIEF:是一种基于二进制字符串的描述符,通过比较关键点周围像素对的亮度差异来生成描述符。
- ORB 通过对 FAST 关键点进行方向赋值并使用旋转不变的 BRIEF 描述符,能够处理图像的旋转不变性。
效果:
- ORB 的计算速度非常快,且对旋转和尺度变化具有较好的适应性。
- 它是一个 开源 方法(没有专利问题),常用于实时应用,如机器人视觉和增强现实等。
- 但是,ORB 在尺度变化上不如 SIFT 和 SURF 强大,对于大范围的尺度变化可能表现较差。
4. FAST (Features from Accelerated Segment Test)
原理:
- FAST 是一种非常快速的角点检测方法,通过比较像素点与周围像素的亮度差异来判断是否为角点。该方法通过简单的圆形邻域测试,检查是否有连续的像素点比中心点亮度大或小,若满足条件则认为是角点。
效果:
- FAST 适用于高效的实时应用,但对于不同尺度、旋转和光照变化的鲁棒性较差,通常作为其他算法的辅助部分。
5. HOG (Histogram of Oriented Gradients)
原理:
- HOG 是一种基于图像梯度方向直方图的特征描述符。通过将图像分为小块(cell),然后计算每个小块内像素的梯度方向和幅值,形成方向直方图,再通过归一化这些直方图,生成图像的描述符。
效果:
- HOG 对物体检测(尤其是行人检测)效果较好,能够有效描述物体的边缘和形状,适用于静态物体检测。
- 在旋转和尺度变化方面的鲁棒性较弱,通常需要结合其他方法。
6. BRIEF (Binary Robust Independent Elementary Features)
原理:
- BRIEF 是一种基于图像局部区域的二进制描述符,它通过在关键点邻域中选择一些像素对,并根据其亮度差异来构造二进制描述符。
效果:
- BRIEF 的优点是计算非常快速且描述符非常紧凑。
- 然而,BRIEF 在旋转不变性和尺度不变性方面的表现较弱,通常与其他方法(如 FAST)结合使用。
7. AKAZE (Accelerated KAZE Features)
原理:
- AKAZE 是一种加速版的 KAZE 特征提取方法,它使用加速的非线性尺度空间来检测特征点。与 SIFT 和 SURF 不同,AKAZE 更关注细节的非线性表示。
效果:
- AKAZE 在一些低纹理图像上表现较好,比 SIFT 和 SURF 在处理速度上更为高效。
- 适合对高频信息非常敏感的任务,且具有较好的局部对比度描述能力。
三、对比
四、小结
本文综述了机器学习兴起前主流的图像特征提取方法,包括SIFT、SURF、ORB等7种算法。SIFT具有尺度不变性但计算量大;SURF在保持性能的同时提升了速度;ORB结合FAST和BRIEF实现快速检测;HOG适用于静态物体检测。这些传统方法通过不同技术手段提取图像关键点和描述符,在旋转、尺度、光照变化等方面各具优势,为计算机视觉发展奠定了基础。随着技术进步,这些方法在实时性、精度等方面不断优化,为后续深度学习在图像处理中的应用提供了重要参考。