使用图像数据进行特征工程

本文探讨了在图像数据上进行特征工程的重要性,包括裁剪、灰度化、RGB通道选择、强度阈值、边缘检测和颜色过滤器等方法。通过这些技术,可以创建更简单、更强大的模型,尤其适用于自动驾驶等场景。然而,特征工程也有其局限性,需要谨慎选择和应用,以避免噪声干扰并确保模型的泛化能力。
摘要由CSDN通过智能技术生成

a34c45459c64671ae4b55e09b7723146.png

通过特征工程,我们立即想到的是表格数据。然而,我们也可以为图像数据获取特征。目标是提取图像的最重要方面。这样做将使我们更容易找到数据和目标变量之间的映射。

这意味着你可以使用更少的数据和更小的模型进行训练。较小的模型可以减少进行预测所需的时间。当部署在边缘设备上时,这是特别有用的。另一个好处是,你可以更确定你的模型用于进行预测的内容。

我们将使用Python通过一些图像特征工程的方法来演示这一点:

  • 裁剪

  • 灰度化

  • 选择RGB通道

  • 强度阈值

  • 边缘检测

  • 色彩滤镜(即提取给定颜色范围内的像素)

为了保持趣味性,我们将为自动汽车进行操作。如下所示,我们希望使用轨道的图像训练模型。然后,该模型将用于进行指导汽车的预测。最后,我们将讨论从图像数据中进行特征工程的局限性。

e13076522563b2ca2b4ca98a28f01a39.png

特征工程与增强

在我们深入探讨之前,有必要讨论图像增强。这种方法与特征工程有着类似的目标。但是,它们通过不同的方式实现了这些目标。

什么是数据增强?

数据增强是指我们使用代码系统或随机地改变数据。对于图像来说,包括翻转、调整颜色和添加随机噪声等方法。这些方法使我们能够人为地引入噪声并增加数据集的大小。如果你想要更详细地了解图像增强,请参阅本文:

https://towardsdatascience.com/augmenting-images-for-deep-learning-3f1ea92a891c

在生产中,模型将需要在不同的条件下运行。这些条件是由变量确定的,如照明、摄像机的角度、房间的颜色或背景中的物体。

数据增强的目的是创建一个能够应对不同条件下变化的模型,它通过添加模拟真实世界条件的噪声来实现这一目标。例如,改变图像的亮度类似于在不同时间收集数据。

通过增加数据集的大小,数据增强也可以让我们训练更复杂的架构。换句话说,它有助于模型参数的收敛。

图像特征工程

图像特征工程的目标类似,我们想创建一个更加稳健的模型。但现在,我们需要删除不必要的噪声以进行准确的预测。换句话说,我们删除会随着不同条件而变化的变量。

通过提取图像的最重要的方面,我们也在简化问题。这使我们能够依赖于更简单的模型结构。这意味着我们可以使用更小的数据集来找到输入和目标之间的映射。

一个重要的区别在于如何在生产中处理这些方法。你的模型不会对增强后的图像进行预测。但是,在特征工程中,你的模型需要在它训练过的相同特征上进行预测。这意味着你必须能够在生产中进行特征工程。

Python图像特征工程

好的,考虑到这些,让我们开始特征工程。

我们将逐步讲解代码,你还可以在GitHub上找到该项目。

https://github.com/conorosully/medium-articles/blob/master/src/image_tools/image_features.ipynb

首先,我们使用以下导入。我们有一些标准包(2-3行)。Glob用于处理文件路径(第5行)。我们还有一些用于处理图像的包(第7-8行)。

#Imports 
import numpy as np
import matplotlib.pyplot as plt

import glob

from PIL import Image
import
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值