收集数据以训练自定义模型的5种方法

在过去的十年中,深度学习技术在计算机视觉领域中的应用逐年增加。其中当属行人检测车辆检测最为火爆,其原因之一就是预训练模型可复用性

由于深度学习技术在这些应用场景上取得的卓越效果,企业现在已经开始使用深度学习来解决自己的问题。

但是,如果可用的预训练模型不适合你的应用场景,这时你们会怎么解决呢?

一个预先训练的模型能够检测到苹果,但它肯定不能区分“好苹果”和“烂苹果”,因为它从未“被教过”这样做。

那么如果遇到了这种情况你会怎么做呢?

“获得大量的好苹果和烂苹果的图像,并训练一个自定义检测模型!”

图片

在创建一个好的自定义检测模型时,一个常见的挑战就是数据问题。深度学习模型需要大量的数据来训练它们的算法——正如我们在MaskRCNNYOLOUNet等模型中看到的那样,这些模型都是在现有的大型数据集COCOImageNet上训练得到的。

如何获取用于训练自定义检测模型的数据?

在这篇文章中,我们将探讨收集数据集来训练自定义检测模型的5种方法。

1. 公开可用的开放标记数据集

如果你比较幸运,你可能会在互联网上获得你想要的已标记数据集。以下是几个可供你选择的计算机视觉领域图像数据集。

  • ImageNet

ImageNet是一个计算机视觉系统识别项目, 是目前世界上图像识别最大的数据库。ImageNet是美国斯坦福的计算机科学家模拟人类的识别系统建立的。能够从图片识别物体。ImageNet数据集文档详细,有专门的团队维护,使用非常方便,在计算机视觉领域研究论文中应用非常广,几乎成为了目前深度学习图像领域算法性能检验的“标准”数据集。ImageNet中目前共有 14,197,122幅图像,总共分为21,841个类别,通常我们所说的 ImageNet 数据集其实是指 ISLVRC2012 比赛用的子数据集,其中 train 有1,281,167 张照片和标签,共1000类,大概每类1300张图片,val 有50,000副图像,每类50 个数据,test 有 100,000副图片,每类100个数据。

图片

  • MS COCO

COCO数据集是微软团队发布的一个可以用来图像recognition+segmentation+captioning数据集,该数据集收集了大量包含常见物体的日常场景图片,并提供像素级的实例标注以更精确地评估检测和分割算法的效果,致力于推动场景理解的研究进展。依托这一数据集,每年举办一次比赛,现已涵盖检测、分割、关键点识别、注释等机器视觉的中心任务,是继ImageNet Chanllenge以来最有影响力的学术竞赛之一。

COCO的检测任务共含有80个类,在2014年发布的数据规模分train/val/test分别为80k/40k/40k,学术界较为通用的划分是使用train35kval子集作为训练集(trainval35k),使用剩余的val作为测试集(minival),同时向官方的evaluation server提交结果(test-dev)。除此之外,COCO官方也保留一部分test数据作为比赛的评测集。

  • Google Open Image

图片

Open Image是谷歌团队发布的数据集。它包含了190万张图片上600个物体类别的16M个边界框,使其成为现有的最大的带有物体位置注释的数据集。这些方框主要是由专业注释者手工绘制的,以确保准确性和一致性。这些图像非常多样化,通常包含有多个物体的复杂场景(平均每张图像8.3个)。

  • MNIST 手写数据集

MNIST 手写数据集:该数据集总共有 70,000 张手写数字图像,是 NIST 提供的更大数据集的子集。数字已进行大小规范化,并在固定大小的图像中居中。

图片

  • DOTA

    DOTA是遥感航空图像检测的常用数据集,包含2806张航空图像,尺寸大约为4k×4k,包含15个类别共计188282个实例,其中14个主类,small vehicle 和 large vehicle都是vehicle的子类。其标注方式为四点确定的任意形状和方向的四边形。航空图像区别于传统数据集,有其自己的特点,如:尺度变化性更大;密集的小物体检测;检测目标的不确定性。数据划分为1/6验证集,1/3测试集,1/2训练集。目前发布了训练集和验证集,图像尺寸从800×8004000×4000不等。

图片

2. 爬取网络图像

另一种选择是在网络上进行图像搜索,并手动选择图像进行下载。由于需要大量数据,因此此方法效率不高。

值得注意的是,网络上的图像可能受版权保护。记得在使用图像之前检查图像的版权。

或者你可以写一个程序来爬取网络并下载你想要的图像。同样需要注意检查每个图像的版权。

图片

3. 拍摄

如果找不到所需物体的图像,可以通过拍照来收集它们。这可以手动完成,即通过自己拍摄每张图像或通过雇用其他人为你拍摄。

收集真实世界图像的另一种方法是在你的场景中安装编程的摄像机,以便自动收集图像。

图片

4. 数据增强

我们知道深度学习模型需要大量的数据。当你只有一个小数据集时,可能不足以训练一个好的模型。在这种情况下,你可以使用数据增强来生成更多训练数据。

几何变换(如翻转、裁剪、旋转和平移)是一些常用的数据增强技术。应用图像数据增强不仅可以通过创建变体来扩展数据集,还可以减少过拟合。

图片

△左边是狗的原始图像,右边是水平翻转的图像

图片

△猫的原始和随机裁剪图像

图片

△猫的原始和旋转图像

图片

△网球的原始和翻译图像

5. 数据生成

有时可能无法获得真实数据。在这种情况下,可以生成合成数据来训练自定义检测模型。由于其成本相对较低,合成数据生成的使用在机器学习中一直在不断增加。

生成对抗网络 (GAN) 是用于合成数据生成的众多技术之一。GAN是一种生成建模技术,其中从数据集创建人工实例的方式保留了原始集的相似特征。

图片

总结

收集训练数据集是训练你自定义检测模型的第一步。在这篇文章中,我们研究了用于收集图像数据的一些技术,包括搜索开源数据集、爬取网络、手动拍摄或使用程序拍摄、使用数据增强技术以及生成合成数据集。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员白城

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值