高级特征工程:图像与时间序列特征解析
1. 图像特征提取
1.1 边缘检测
在处理以图像为数据一部分的机器学习问题时,简单特征或许能解决不少问题,但对于许多图像分类问题,图像中的形状和物体表示至关重要。边缘检测是表示图像形状的简单方法,常见的边缘检测算法有 Sobel 和 Canny 算法。
提取边缘后,可以计算表示图像中边缘总数的边缘得分。公式如下:
[ edge_score = \frac{\sum edges}{res_x \times res_y} ]
其中, edges 是边缘图像, res 是图像的分辨率。结合其他特征,这可能有助于确定感兴趣的对象。还可以根据具体用例定义其他基于边缘的特征,例如计算图像多个部分的边缘得分。
1.2 高级形状特征
更复杂的特征提取算法可用于检测特定形状和对象,如方向梯度直方图(HOG)。HOG 算法是一个多步骤的图像处理过程,其目标是描述图像区域中的形状和对象,且对尺度和方向的小变化不太敏感。具体步骤如下:
1. 计算梯度图像(图像边缘“移动”的方向)。
2. 将图像划分为称为单元格的小块。
3. 计算这些单元格内梯度的方向。
4. 计算各个单元格中这些方向的直方图。
通常,会从较小的单元格定义较大的块,用于对单元格中的梯度值进行归一化,以避免对光照或阴影变化过于敏感。每个单元格可以展平为描述图像中形状的特征列表,用于机器学习管道。
在 Python 中,可以使用 scikit-image 库
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



