十个最常用的计算机视觉数据集

如今,人工智能和机器学习领域中最振奋人心的一个分支是计算机视觉(Computer Vision,简称CV)。CV应用于多种场景,以改善我们的日常生活,并推进科学技术研究。其中包括:

  • 自动驾驶
  • 自动生成图像描述
  • 社交媒体的面部识别和标注
  • 医学影像分析与诊断
  • 家居安防系统
  • 制造过程中的质量控制与缺陷识别
  • 更多

计算机视觉数据集

为准备用于计算机视觉项目的机器学习模型和AI算法,数据不可或缺。从事CV项目的公司面临的一项挑战是,获得足够多的正确且高质量的数据来训练他们的算法。近年来,不同的公司已创建并发布一些预标注数据集。您可以为所能想到的每种类型场景找到开源数据集和可购买的数据集。

常见CV任务包括:

  • 目标检测
  • 目标分割
  • 多目标标注
  • 图像分类
  • 图像描述生成
  • 人体姿态预估
  • 逐帧视频分析

对于您的项目而言,成品数据集是否适合,取决于您所需的数据类型及您希望完成的任务。

成品计算机视觉数据集案例

训练CV算法是一个时间和数据密集型项目,甚至比训练其他类型的机器学习算法需要更多的时间和数据。虽然您可能习惯于处理成百上千的训练数据点,但这不足以为CV任务训练出高质量ML模型。如果没有足够的训练数据,您的CV模型将无法产出有用的结果。

由于难以获得足够的数据来训练CV机器学习模型,在网上查找细致且可靠的CV数据集已变得越来越普遍。

如果在网上找到符合您需求的CV数据集,请务必评估数据是否具有足够高的质量。试着问自己:

  • 此数据的来源是否可信?
  • 能否发现并修复数据中的任何潜在错误?
  • 数据是否完整且具代表性?
  • 数据是否客观?还是存在明显的偏见?

问自己这些问题可以确保您最终获得高质量的数据集,这将帮助您训练出高质量的机器学习算法来完成CV任务。下面,您将看到我们推荐的最佳CV数据集,以及它们优秀的原因。

1. ObjectNet——最适合无偏见数据

预标注CV数据集的主要问题之一是偏见。许多用于训练CV模型的预标注数据集的来源均使用从互联网上抓取的不完整图像,这会在最终数据集中产生偏见。

ObjectNet由MIT-IBM沃森人工智能实验室(MIT-IBM Watson AI Lab)的研究人员开发。研究人员构建的数据集与传统数据集不同。他们不是从现有来源挑选照片,而是将图片众包。该团队在“土耳其机器人”(Mechanical Turk)上雇佣了许多不同的人,并要求提供目标的照片,然后提交审查。

图像审查过程对整个数据集进行评估,以确保背景、光照、旋转和其他图像因素具有足够的多样性,从而限制图像偏见。ObjectNet数据集包含分布在313个对象类中的50,000张图像。

ObjectNet是一种不同类型的数据集。在某些方面,该数据集提供一个CV模型,其中的数据干净得近乎完美。在许多图像中,目标居中,背景整洁。但是,它也具有多样性,呈现出不常见的旋转、透视和视角。虽然这些图像不会让人们在寻找特定目标时感到困惑,但它们对于训练高质量的CV模型非常有用。

2. 澳鹏——国际项目的最佳选择

在澳鹏,我们拥有超过250个可授权的数据集,可用于各种不同类型的CV项目,包括音频、语音、视频、图像和文字。在我们的预标注数据集中,您将发现超过25,000张图像和涵盖80多种语言与方言的870万个单词。

我们的预标注数据集旨在使您的CV模型训练高效和有效。每个数据集都经过精心设计,使您能够大规模训练高度精确的CV模型。在澳鹏,我们与全球超过100万名承包商的工作人员合作,这使我们能够为使用多种语言的国际项目创建最好的预标注数据集之一。

如果您查看我们的预标注数据集,但并未找到适合您需求的数据集,我们也可提供数据采集服务,为您的特定用例创建自定义数据集。

3. VisualData——目标识别的最佳选择

如果您的CV模型旨在识别目标,并且您需要预标注图像数据,那么VisualData是为您的用例寻找正确数据集的最佳选择。VisualData监控大学实验室、社交媒体和许多其他来源,以跟踪新发布的开源数据集。

VisualData提供了可供使用的开源数据集的可搜索存档。您可以按发布日期、主题或通过关键字搜索对数据集进行排序,以找到CV用例的正确图像。

4. Graviti——共享和查找数据的最佳选择

Graviti已建立一个开放的数据集社区,其中,各种企业、机构、研究团队和个人开发人员共享、访问和管理大型数据集。Graviti拥有1000多个高质量的开源数据集,可用于50多种应用场景和10多种数据格式,为数据搜索者提供了不断扩展的数据集选择。

5. ImageNet——大型数据集的最佳选择

ImageNet是市场上最大、最受欢迎的开源数据集之一。ImageNet拥有超过1400万张已手动标注的图像。数据库按WordNet层次结构予以组织,对象级标注通过边界框完成。

6. Roboflow——使用不同文件格式的最佳选择

Roboflow旨在支持开发人员创建自己的计算机视觉机器学习模型,而无论他们的技能或团队规模如何。Roboflow通过帮助您获得正确的数据并准确地标注数据,以简化CV模型的构建过程。

作为简化过程的一部分,Roboflow还具有可用于训练CV模型的开源数据集。这些数据集涵盖各种领域,包括动物、棋类游戏、自动驾驶汽车、医疗、热图像和空中无人机图像。Roboflow还提供一些由合成数据组成的预标注数据集。

Roboflow的优势在于它为用户提供了以多种不同格式下载图像的能力。这些格式包括:

  • VOC XML
  • COCO JSON
  • YOLOv3平面文本文件
  • TFRecords

7. GitHub和Kaggle——最新数据集或模糊数据集的最佳选择

如果您正在处理许多不同的CV项目,并且将需要多个数据集,那么您可以使用的最佳来源之一是社区构建和共享平台,如GitHub和Kaggle。通过加入这些免费的社区,您可以开始构建您的知识库,了解存在哪些数据集,以及哪些数据集对您的独特项目最有帮助。

花点时间输入正确的关键字,您就可以在GitHub和Kaggle等网站上找到一些最新和最模糊的数据集。您还可以与其他数据科学家和机器学习工程师建立网络,他们可能会帮助您找到所需的数据集。

8. Kinetics——人物交互视频的最佳选择

Kinetics提供一个开源数据集,其中共包含650,000个视频剪辑,涵盖700个人类动作类型。该数据集包括人与物互动,人与人互动。数据集可以细分为700个视频剪辑的部分。数据集中的每个视频剪辑均有标注,且持续大约10秒。Kinetics数据集是一个高质量的数据集,可用于许多不同的CV用例。

9. IMDB-WIKI——识别性别和年龄的最佳选择

如果您想训练识别一个人的年龄或性别的CV模型,您就需要使用IMDB-WIKI开源数据集。您可以在许多不同的网站(包括GitHub)上找到此数据集。

IMDB-WIKI数据集共有523,051张图片。这些图像均从维基百科和IMDB中提取。每张图像均有标注,并包括图像中人物的性别、年龄和姓名。这使得该开源数据集成为最大的可公开使用的人脸数据集。

10. Berkeley DeepDrive——自动驾驶车辆CV任务的最佳选择

CV技术最令人兴奋的实际应用之一是自动驾驶。但是,在这些车辆上路之前,它们均需要数小时的训练。为使这些CV模型的训练更易获取且公平,加州大学伯克利分校创建了拥有超过10万个视频序列的Berkeley DeepDrive数据集。该数据集为开源数据集,可供公众使用。

Berkeley DeepDrive数据集包括各种标注,包括目标边界框、驾驶区域、图像级标记、地面标记和全帧实例分割。

成品数据集给企业带来的好处

预标注计算机视觉数据集的兴起使企业能够更容易获取训练CV模型所需的数据。CV模型的应用范围很广,许多组织正在研究如何应用它来解决问题。随着更多的企业意识到CV模型的强大功能,越来越多的企业将寻找数据来训练他们的CV模型。如果没有预标注数据集,许多企业将没有时间或资源创建CV所需的模型。

预标注数据集可使企业将其资源用于构建和训练CV模型,而不是采集数据。而且,可用的开源数据集越多,数据质量就越高。随着这些数据集质量的提高,用于解决整个组织中问题的CV模型也将得到改善。

计算机视觉数据集常见问题解答

随着越来越多的数据集可以免费在线使用,务必谨慎对待项目中使用的数据集,并了解潜在数据集相对于其他数据集的优势。这些常见问题有助于引导您找到CV项目的正确数据集。

我可以从何处获得正确的数据?

谈及“正确的数据”,有许多因素需要考虑。您需要数据有正确的:

  • 数据类型(图像、视频、音频)
  • 文件格式
  • 数据点的数量
  • 数据类型(无偏见、高质量、准确标注)

由于存在这么多不同的因素,审查数据集的来源、数据的标注方式和数据的标注者非常重要。或者,如果数据是原始数据且未经标注,您将如何能够自己进行标注。

获得正确的数据也意味着获得足够的数据。您将需要找到与您的用例相匹配的数据集,并且能够帮助您训练CV模型。一般来说,用来训练模型的数据越多越好。寻找大型开源数据集或结合两个小型数据集,是找到足够数据来训练您的CV模型的好方法。

数据数量越多,数据类型越多样化,您的CV模型就越能识别数据点的细微差异,并能够更准确地读取周围的环境。这有助于避免误判。

我需要多少数据?

虽然您会经常听到这样的指导原则,即数据越多越好,但当数据集中有太多数据时,就会有一个临界值。那么,正确的数据量是多少?

没有一个数字可表示正确的数据量,但范围可以帮助您为项目找到正确的数据量。大多数CV模型需要在数千到数百万个数据点上进行训练。CV模型或模式识别场景越复杂,数据集中所需的数据点就越多。

如何确保计算机视觉数据集的高质量?

在本文中,我们已提到高质量的数据集。但是,是什么使得数据质量高而不是低?

高质量的数据与数据的标注方式和标注准确率有关。虽然一些数据标注已经实现自动化,但是最佳、质量最高的数据标注通过人工标注和自动化相结合来完成。当您使用高质量的数据来训练您的CV模型时,您将拥有一个更好的功能模型,可以更准确地预测和观察。

CV模型数据集质量的另一个考虑因素是集合中包含的数据点的范围。例如,您希望数据集中的图像覆盖CV模型可能遇到的所有实际场景。如果您的训练数据缺乏多样性,或者由于缺乏数据而存在偏见,那么您的CV模型也是如此。准确标注的高质量数据对于创建成功的CV模型颇有帮助。点击观看:从试点到投产,采用值得信赖的AI

如何避免计算机视觉数据集中的偏见?

在寻找正确的数据集时,人们面临的另一个常见问题是如何评估数据集的偏见。训练数据偏见会以多种不同的方式对CV模型的准确性产生负面影响。

虽然偏见通常被认为是种族主义或性别歧视,但当涉及到数据时,这种概念更为广泛。偏见是指数据集中缺少的任何内容。数据集中最常见的一种偏见形式——数据集不能准确地表示CV模型工作的真实环境。重要的是,您的数据集要尽可能地代表您的模型所处的真实世界场景。创建训练数据集时,必须考虑以下因素:

  • 季节性倾向
  • 地理差异
  • 图像视角
  • 背景

许多当前可用的开源数据集包含在理想条件下拍摄的图像,这意味着角度直接,背景整洁。虽然这使得图像易于使用,但无法训练您的CV模型去适应真实世界、不完美的条件和情况。

减少数据偏见的一种最简单方法是在使用数据之前让更多的人来查看数据。审查数据的人越多、越多样化,您在数据中可能存在的漏洞和偏见就越少。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/104055.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

重入漏洞EtherStore

重入漏洞 // SPDX-License-Identifier: MIT pragma solidity ^0.8.13;contract EtherStore {mapping(address > uint) public balances;function deposit() public payable {balances[msg.sender] msg.value;}function withdraw() public {uint bal balances[msg.sender]…

Linux 函数调用的用户态与内核态

在用户态中,程序的执行往往是一个函数调用另一个函数。函数调用都是通过栈来进行的。 在进程的内存空间里面,栈是一个从高地址到低地址,往下增长的结构,也就是上面是栈底,下面是栈顶,入栈和出栈的操作都是…

ModbusTCP 转 Profinet 主站网关在博图配置案例

兴达易控ModbusTCP转Profinet网关,在 Profinet 侧做为 Profinet 主站控制器,接 Profinet 设备,如伺服驱动器;兴达易控ModbusTCP 和 Profinet网关在 ModbusTCP 侧做为 ModbusTCP 从站,接 PLC、上位机、wincc 屏等。 拓…

k8s kubeadm配置

master 192.168.41.30 docker、kubeadm、kubelet、kubectl、flannel node01 192.168.41.31 docker、kubeadm、kubelet、kubectl、flannel node02 192.168.41.32 do…

python 字典dict和列表list的读取速度问题, range合并

嗨喽,大家好呀~这里是爱看美女的茜茜呐 python 字典和列表的读取速度问题 最近在进行基因组数据处理的时候,需要读取较大数据(2.7G)存入字典中, 然后对被处理数据进行字典key值的匹配,在被处理文件中每次…

Python:实现日历到excel文档

背景 日历是一种常见的工具,用于记录事件和显示日期。在编程中,可以使用Python编码来制作日历。 Python提供了一些内置的模块和函数,使得制作日历变得更加简单。 在本文,我们将探讨如何使用Python制作日历,并将日历输出到excel文档中。 效果展示 实现 在代码中会用到cale…

TypeScript学习 | 泛型

简介 泛型是指在定义函数、接口或类的时候,不预先指定具体的类型,而在使用的时候再指定类型的一种特性 作用 可以保证类型安全的前提下,让函数、接口或类与多种类型一起工作,从而实现复用 基本使用 举个例子: 创…

各品牌PLC存储器寻址的规则

在PLC编程时,字节或多字节的变量一般支持绝对地址寻址(比如,IW0、MD4等)。要想正确寻址,则必须要搞清楚寻址的规则。目前常见的规则有两种:字节寻址和字寻址。下图清晰地表达了两种规则的编号情况&#xff…

【C++】stackqueue

适配器是一种设计模式 , 该种模式是将一个类的接口转换成客户希望的另外一个接口 。 虽然 stack 和 queue 中也可以存放元素,但在 STL 中并没有将其划分在容器的行列,而是将其称为 容器适配 器 ,这是因为 stack 和队列只是对其他容…

上传和下载文件到google drive/Local pc

1 上传 参考:使用 Python 将文件上传到 Google 云端硬盘_迹忆客 Upload file to google drive using Python - CodeSpeedy (没起作用,但可以参考一下) 第 1 步:Google API Playground 我们可以通过搜索 Google 找到更多关于 Google API Pla…

vue路径中“@/“代表什么

举例&#xff1a; <img src"/../static/imgNew/adv/tupian.jpg"/>其中&#xff0c;/是webpack设置的路径别名&#xff0c;代表什么路径&#xff0c;要看webpack的build文件夹下webpack.base.conf.js里面对于是如何配置&#xff1a; 上图中代表src,上述代码就…

出海路上离不开的Email营销,教你这样来优化!

随着互联网的不断发展&#xff0c;Email已经成为人们工作和生活中不可或缺的一部分。尤其是对于我们这些跨境企业而言&#xff0c;发送Email是一个促进销售和维护客户关系的良好渠道。而且邮件的价格也是比较低廉的&#xff0c;很适合用于日常推广营销&#xff0c;所以人手几个…

论文阅读 - Coordinated Behavior on Social Media in 2019 UK General Election

论文链接&#xff1a; https://arxiv.org/abs/2008.08370 目录 摘要&#xff1a; Introduction Contributions Related Work Dataset Method Overview Surfacing Coordination in 2019 UK GE Analysis of Coordinated Behaviors 摘要&#xff1a; 协调的在线行为是信息…

嵌入式软件工程师面试题——2025校招专题(三)

说明&#xff1a; 面试题来源于网络书籍&#xff0c;公司题目以及博主原创或修改&#xff08;题目大部分来源于各种公司&#xff09;&#xff1b;文中很多题目&#xff0c;或许大家直接编译器写完&#xff0c;1分钟就出结果了。但在这里博主希望每一个题目&#xff0c;大家都要…

在nodejs中实现实时通信的几种方式

在nodejs中实现实时通信的几种方式 在当今世界中&#xff0c;实时通信至关重要。无论是聊天应用程序还是实时体育更新&#xff0c;实时通信都是保持用户活跃度所必需的。Node.js 因其速度、可扩展性和可靠性而成为开发实时应用程序的流行工具。在本文中&#xff0c;我们将探讨…

爬虫进阶-反爬破解7(逆向破解被加密数据:全方位了解字体渲染的全过程+字体文件的检查和数据查看+字体文件转换并实现网页内容还原+完美还原上百页的数据内容)

目录 一、全方位了解字体渲染的全过程 1.加载顺序 2.实践操作&#xff1a;浏览器中调试字体渲染 3.总结&#xff1a; 二、字体文件的检查和数据查看 1.字体文件的操作软件 2.映射关系的建立 3.实践操作&#xff1a;翻找样式和真实内容 4.总结&#xff1a; 三、字体文…

Tp框架如何使用事务和锁,还有查询缓存

1.事务 在ThinkPHP框架中&#xff0c;可以使用think\db\Transaction类来实现事务。 use think\Db; use think\db\Transaction;// 开始事务 Db::startTrans();try {// 执行数据库操作Db::table(user)->where(id, 1)->update([name > John]);// 提交事务Db::commit(); }…

swagger stub https无法访问

有个app的以前别人写的假服务用http访问可以&#xff0c;但是用https去访问就不行 看官方说schema里面配置一个https就可以了但是对我那个server没有用&#xff1a; 官方参考链接&#xff1a; API Host and Base Path 后来领导给我发了个这个&#xff1a; Node.js Express …

解决方法:从客户端(---<A href=“http://l...“)中检测到有潜在危险的 Request.Form 值。

从客户端(-----<A href"http://l...")中检测到有潜在危险的 Request.Form 值。 解决方法&#xff1a;应该是不同的.net Framework版本对代码的校验不同&#xff0c;造成在高版本操作系统&#xff08;即高.net Framework版本校验&#xff09;不兼容&#xff0c;可…

【疯狂Java】数组

1、一维数组 (1)初始化 ①静态初始化&#xff1a;只指定元素&#xff0c;不指定长度 new 类型[] {元素1,元素2,...} int[] intArr; intArr new int[] {5,6,7,8}; ②动态初始化&#xff1a;只指定长度&#xff0c;不指定元素 new 类型[数组长度] int[] princes new in…