图像处理—数据集的构建

这篇具有很好参考价值的文章主要介绍了图像处理—数据集的构建。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1. 概述

人类在认识世界的过程中,首先是获取信息,如眼睛看、耳朵听、鼻子闻等。只有获取了信息后才能进行认知,而这些信息的质量对我们的学习效果影响重大。深度学习也是类似的,我们提供了什么数据,计算机才能分析什么样的数据,对于未提供的数据,计算机往往无法判读。

一切模型训练的基础就是数据集,对于深度学习来说,好的数据集具有的特点:
(1)数据量充足
(2)特征明显
(3)分布均匀
越好的数据集,模型训练的效果越好,例如MS COCO、PASCAL VOC数据集等均为优秀的数据集。
在我们开展实验的过程中,如何获得一个理想的数据集是我们所关心的。为此,我根据自己的理解,总结出以下数据集构建的经验。个人水平有限,不足之处还望批评指正!
注:本内容仅仅针对有监督学习的图像处理类数据。


2. 采集数据

计算机中的数据有两种来源:
(1)实时数据(借助传感器等获取的);
(2)现有数据(常被分为:训练集、验证集、测试集)。

目前,深度学习常用的方法是,通过构建算法对现有数据(训练集)进行学习后获得模型。然后,利用该模型对实时或现有数据进行检测(其中,实时数据检测用于应用端;现有数据检测用于评估模型效果,这种往往被称为验证集、测试集)。我们所做的采集数据工作,是为了构建现有数据集用于模型训练与评估。

目前常见的数据采集方法包括:
(1)网络公开数据集
网络上有各种各样的开发数据集,我们只要找到相应的网址获取下载链接,就可以得到不同领域的数据集,一般这些数据集是为了帮助学习者或者数据分析相关人员提供帮助,也有的是为了举办各种比赛,以此来寻找到更好的数据分析方案和结果。例如MS COCO、PASCAL VOC数据集等,这类数据一般质量较高,推荐用于学习!!!

(2)传感器采集
传感器(英文名称:transducer/sensor)是一种检测装置,能感受到被测量的信息,并能将感受到的信息,按一定规律变换成为电信号或其他所需形式的信息输出,以满足信息的传输、处理、存储、显示、记录和控制等要求。
通常根据其基本感知功能分为热敏元件、光敏元件、气敏元件、力敏元件、磁敏元件、湿敏元件、声敏元件、放射线敏感元件、色敏元件和味敏元件等十大类。比如我们用的摄像头、录音设备、体温检测……等等设备。

(3)网络爬虫
网络爬虫,是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。(不推荐使用该方法,爬虫有风险。)

(4)业务数据集
相信在很多公司都会有相应日常运营和业务部门,各种相关的数据都会记录在某些文件或者系统中,例如常见的Excel 文件,各种办公系统的数据库系统等等。这些数据一般为内部数据,就不要多想了。

(5)数据交易平台
通俗说就是在网上购买数据集,这个主要看自己预算了。

对于一名研究生,为了发表论文,数据集常常需要依靠自己利用传感器采集(例如:光学相机、CT扫查、B超图像、红外温度图等)。个人在采集时要尽可能做到以下几点:
(1)数据量至少是500往上,越多越好。
(2)同一个目标,可以选取不同角度,不同的距离,不同的信号强度等进行采集,丰富数据。
(3)采集数据时分布要均匀,不可顾此失彼。


3. 数据集制作步骤

收集完图片后,就需要进行打标签了,标签的好坏对模型具有决定性影响,所以标签必须弄好,不然就白白浪费你的数据了。这个过程是个费时费力的过程,需要你沉得住气,数据量太大的话建议花钱众包。
在图像处理领域,我们主要使用labelimglabelme。下面两个链接是其操作的过程(这部分内容网上有非常好的教程,我就不做重复工作了):

链接: 数据集制作——使用labelimg制作数据集
链接: 数据集制作——使用labelme制作数据集

转载来源:
萝北村的枫子——https://blog.csdn.net/thy0000/article/details/123533410
黑暗星球——https://blog.csdn.net/u014061630/article/details/88756644

数据标注后,为了方便检查标注情况,我们可以将标注结果显示在图片上层。我在这将个人查询到的代码进行分享,出处不记得在哪里了。

链接: 数据标注的可视化——labelme、labelimg


4. 数据集处理方法

数据集标签打好后,还需要一定的处理才能真正用到模型训练上面。目前常用的数据集标准有coco、voc与yolo。为了方便操作,在此我将提供其互相转换的代码。
coco数据集
链接: 数据集处理——labelme2coco
链接: 数据集处理——voc2coco

voc数据集
链接: 数据集处理——labelme2voc
链接: 数据集处理——yolo2voc
链接: 数据集处理——coco2voc该部分装载自萌萌滴太阳

yolo数据集
链接: 数据集处理——voc2yolo


5. 数据集增强方法

数据增强(Data Augmentation, DA)缓解了深度学习中数据不足的场景,在图像领域首先得到广泛使用,进而延伸到 NLP 领域,并在许多任务上取得效果。一个主要的目的是增加训练数据的多样性,从而提高模型泛化能力。
常用的一些方法,包括了翻转、旋转、缩放、裁剪、移位等方法。在实际模型训练中,数据增强的使用包括:
(1)模型训练前增强(即单独编写数据增强算法,扩充数据集。数据扩充完毕后再进入到模型训练中去。)
(2)模型训练中增强(即数据增强算法与模型训练算法同步进行,这个在一些成熟的模型中包含了数据增强,如mmdetection、yolov5等源码中都自行包括了数据增强,只需要你调用相应代码就好了。)

两者各有优劣,在模型训练前增强,能方便开发人员准确掌握数据集情况;而模型训练中增强,效率更高,修改更加方便。
个人比较喜欢模型训练前增强,下面链接为数据集增强代码链接。

链接: 数据集增强——Data to enhance

转载来源:https://github.com/maozezhong/CV_ToolBox

以上内容均是我个人经验总结,使用的代码均是在网络开源代码、或者在其基础上进行了细微调整。在此非常感谢各位开源大佬,本人代码均为开源,如若有侵权存在,我表示道歉并会及时下架侵权内容。感谢大家的支持与理解!!!文章来源地址https://www.toymoban.com/news/detail-440566.html


参考

  1. https://blog.csdn.net/thy0000/article/details/123533410
  2. https://blog.csdn.net/u014061630/article/details/88756644
  3. https://github.com/maozezhong/CV_ToolBox
  4. https://blog.csdn.net/qq_42647047/article/details/106376211

到了这里,关于图像处理—数据集的构建的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 简要介绍 | 基于Python的图像形态学处理概述

    注1:本文系“简要介绍”系列之一,仅从概念上对基于Python的图像形态学处理进行非常简要的介绍,不适合用于深入和详细的了解。 Digital terrain models from airborne laser scanning for the automatic extraction of natural and anthropogenic linear structures In: Geomorphological Mapping: a professional handbook of

    2024年02月10日
    浏览(45)
  • [全连接神经网络]Transformer代餐,用MLP构建图像处理网络

            使用纯MLP处理图像信息,其原理类似vit,将图片进行分块(patch)后展平(fallten),然后输入到MLP中。理论上MLP等价于1x1卷积,但实际上1x1卷积 仅能结合通道信息 而不能结合空间信息。根据结合的信息不同分为channel-mixing MLPs和token-mixing MLPs。        总体结构如下图

    2024年01月21日
    浏览(47)
  • 构建基于AWSLambda的人工智能应用:语音识别、图像识别和自然语言处理

    作者:禅与计算机程序设计艺术 在人工智能领域,用大数据、机器学习等方法来解决复杂的问题,已经成为越来越多企业和开发者关注的问题。但是,如何把这些方法落地到生产环境中,仍然是一个难题。 随着云计算平台的广泛普及,AWS Lambda作为一项服务正在成为各个公司

    2024年02月09日
    浏览(78)
  • 智能文档图像处理技术:解决大数据时代文档图像处理难题

    智能文档图像处理技术是指利用计算机视觉和人工智能等技术对文档图像进行处理和分析,实现自动化识别、提取、分类和管理的技术。随着人工智能时代的到来和各行业信息化进程的加速,越来越多的个人和企业用户开始借助智能文档图像处理技术来提高工作效率,降低人

    2024年02月09日
    浏览(49)
  • 数据图像处理——期末复习题库

    一.填空题 1.数字图像是用一个数字阵列来表示的图像。数字阵列中的每个数字,表示数字图像的一个最小单位,称为( )。 2.数字图像处理可以理解为两个方面的操作:一是从图像到图像的处理,如图像增强等; 二是( ),如图像测量等。 3.数字图像处理可以理解为两个方

    2024年02月10日
    浏览(47)
  • 《数字图像处理-OpenCV/Python》连载(10)图像属性与数据类型

    本书京东优惠购书链接:https://item.jd.com/14098452.html 本书CSDN独家连载专栏:https://blog.csdn.net/youcans/category_12418787.html 在Python语言中,OpenCV以Numpy数组存储图像,对图像的访问和处理都是通过Numpy数组的操作来实现的。 本章内容概要 介绍Python语言中OpenCV的数据结构,学习获取图像

    2024年02月07日
    浏览(88)
  • 相机取图后将数据转换成对应的图像处理库图像文件

    不同相机取完图像后的图像数据包里包含的数据并不一定是相同的,而且相机取图后的图像数据第三方的视觉库(Halcon,visionpro等)也并不能直接使用(除非使用视觉库自带的采图工具而非相机自己的SDK)。所以一般的在相机取图后需要向目标视觉库支持的图像类型进行转换

    2024年02月14日
    浏览(41)
  • 【3D 图像分割】基于 Pytorch 的 VNet 3D 图像分割7(数据预处理)

    在上一节:【3D 图像分割】基于 Pytorch 的 VNet 3D 图像分割6(数据预处理) 中,我们已经得到了与 mhd 图像同 seriesUID 名称的 mask nrrd 数据文件了,可以说是一一对应了。 并且, mask 的文件,还根据结节被多少人同时标注,区分成了4个文件夹,分别是标注了一、二、三、四次,

    2024年02月07日
    浏览(52)
  • FPGA + 图像处理(一)三种向zynq中DDR内导入图像数据的方法

    本文主要讲解三种本人已知的将图像数据传入ddr的方法(一些非图像数据也可以用),方便后续通过fpga对图像进行处理,在一些导入方法中,需要将图像转换成特定的格式,因此,需要用到matlab来实现图像的格式转换 这里先展示一下用到的图像,是一个ai随机绘制的图像 通

    2024年02月03日
    浏览(68)
  • 【Computer Vision】图像数据预处理详解

    活动地址:[CSDN21天学习挑战赛](https://marketing.csdn.net/p/bdabfb52c5d56532133df2adc1a728fd) 作者简介 :在校大学生一枚,华为云享专家,阿里云星级博主,腾云先锋(TDP)成员,云曦智划项目总负责人,全国高等学校计算机教学与产业实践资源建设专家委员会(TIPCC)志愿者,以及编程

    2024年02月06日
    浏览(51)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包