推荐!最适合初学者的18个经典开源计算机视觉项目

news/2024/9/16 18:37:09/

英语原文:18 All-Time Classic Open Source Computer Vision Projects for Beginners

翻译:雷锋字幕组(小哲)


概述

  • 开源计算机视觉项目是在深度学习领域中获得一席之地的绝佳路径

  • 开始学习这18个非常受欢迎的经典开源计算机视觉项目

引言

计算机视觉的应用现在无处不在。 老实说,我已经不记得上次一整天没有遇到或者没有与至少一样计算机视觉使用样例进行交互时什么时候了(手机上的人脸识别)

但是有一件事情就是 一 想要学习计算机视觉的人倾向与陷入理论的概念, 这是所能采取的最糟糕的路。 为了真正的学习掌握计算机视觉, 我们需要将理论与实践相结合。

并且这就是开源计算机视觉项目存在的地方。 不需要花一分钱就可以练习计算机视觉技术——你可以坐在现在的位置上完成这些工作。

推荐!最适合初学者的18个经典开源计算机视觉项目

所以在这篇文章中, 我结合并创建了一个基于计算机视觉各种应用的开源计算机视觉项目列表。有很多事情要做,这是一个相当全面的清单,所以让我们深入研究!

如果你是一个完全的计算机视觉和深度学习的新手并且更想要通过视频学习, 请参考下边:

  • 使用深度学习2.0 的计算机视觉

18个开源的计算机视觉项目分为下边的这些类:

  • 图像分类

  • 人脸识别

  • 使用GAN的自然风格转换

  • 场景文字检测

  • 使用DETR的目标检测

  • 语义分割

  • 自动驾驶的道路交通线检测

  • 图像标注

  • 人类姿势估计

  • 通过面部表情的情感识别

图像分类的开源计算机视觉项目

图像分类是计算机视觉领域的基础任务, 目标是通过给每张图片分配一个标签来区分图像。对人类来说理解区分我们看到的图像很容易。 单是对于机器来说时非常不同的。 对于机器来说区分大象和汽车都是一件繁重的任务。

下边是几个最突出的图像分类开源项目:

  1. Cifar10

    CIFAR-10是一个在训练机器学习和计算机视觉算法常用的数据集,它是机器学习最受欢迎的数据集。 包含了60000张图像, 分为10类, 每张图像的的尺寸为32x32。 类别有飞机、汽车、鸟、猫、鹿、狗、青蛙、马、船和卡车。

  2. ImageNet

    ImageNet数据集是一个为计算机视觉研究的巨大图像数据集, 这个数据集中有多于140万张图像被手供标注, 并且这些标注说明了图像中含有那些物体。并且有多余1万张图像标注了物品的边界框。 ImageNet包含了多余20000类的物品。

作为初学者,你可以使用keras或者pytorch从头开始学习神经网络, 为了能够得到更好的效果提升学习的层次, 我建议使用迁移学习预训练模型,例如CGG-16, Resnet-50,GoogleNet等等。

推荐!最适合初学者的18个经典开源计算机视觉项目      

  • top4的图像分类的python代码

建议通读下边的文章更好的理解图像分类:

  • 使用深度神经网络进行ImageNet的图像分类

  • 卷积层数加深(VGG)

  • 图像识别的深度残差网络(ResNet)

人脸识别的开源计算机视觉代码

人脸识别是计算机视觉最广泛的应用。人脸识别被应用在安全, 监控或者解锁手机。 这是一个在预先存在的数据集中在图像或者视频中确认你的人脸。 我们可以使用深度学习的方法来学习这些人脸的特征并且识别他们。

这是一个多个步骤的过程,这个过程由以下的步骤构成:

  • 人脸检测: 这用来定位一个或者多个在图像或者视频中的人脸

  • 人脸对齐: 对齐是用来规范化人脸在集合上与数据集一致

  • 特征提取: 后来,提取特征并且用在识别任务中。

  • 特征识别: 与数据库中的特征相匹配

下面的开放源数据集将为您提供良好的人脸识别机会:

  1. MegaFace

    MegaFace是一个大规模的公共人脸识别训练数据集,它是商业人脸识别问题最重要的基准之一。它包括4753320个人脸,672057个身份

  2. Labeled faces in wild home

    Labeled faces in wild home(LFW)是一个人脸照片数据库,旨在研究无约束人脸识别问题。它有13233张5749人的图片,是从网上发现和收集的。另外,1680名照片中的人在数据集中有两张或两张以上不同的照片。

此外, 为了更好的利用这些项目, 你可以使用像FaceNet这样的预训练模型。

Facenet是一种深度学习模型,它为人脸识别、验证和聚类任务提供了统一的嵌入。网络将每个人脸都映射在一个欧几里德网络中,每个图像之间的距离是相似的。

推荐!最适合初学者的18个经典开源计算机视觉项目

资源

也可以使用keras或者pytorch的预训练模型来构建自己的人脸识别系统。

还有一些更先进的人脸识别模型可供使用。Deepface是由Facebook的研究人员开发的基于CNN的Deep网络。这是在人脸识别任务中使用深度学习的一个重要里程碑。

为了更好地了解近30年来人脸识别技术的发展,我建议您阅读一篇有趣的论文,题目是:

Deep Face Recognition: A Survey

开源的计算机视觉项目 一 使用GAN进行自然风格转换

自然风格转换是一种使用一张图像的风格重建另一张图像的内容的计算机视觉技术。这是生成对抗网络(GAN)的应用, 这儿,我们输入了两张图像, 一张内容图像,另一张时风格参考图像, 然后将二者混合在一起以至于输出图像看起来像使用风格参考图像绘制出来的油画。

这是通过优化输出图像与内容图像匹配的内容统计和样式参考图像的样式统计来实现的。

推荐!最适合初学者的18个经典开源计算机视觉项目

资源

下边是一些用来练习非常令人惊叹的数据集:

  1. COCO数据集

    COCO是一个大规模的对象检测、分割和标注的数据集。数据集中的图像是从日常场景中捕获的日常对象。此外,它提供了多对象标记、分割掩码标注、图像标注和关键点检测,共有81个类别,使其成为一个非常通用和多用途的数据集。

  2. ImageNet

    上边已经提到过 一 ImageNet非常灵活多用。

如果你还不知道如何应用风格转换模型,这儿是一个tensorflow的教程可以帮助你, 而且, 如果你像更加升入了解这个技术我建议你阅读接下来的论文。

  • 艺术风格的学术表达

  • 使用循环一致对抗网络的无需配对的图像到图像的转换

  • 使用卷积神经网络进行图像分割转换

用于场景文本检测的开源计算机视觉项目

在任何给定的场景中检测给定的场景是另外的一个非常有趣的问题。 场景文字就是出现在户外拍摄的图像中出现的字符。 例如, 道路上的车牌号, 道路上的公告牌等等。

场景图像中的文字在形状, 字体, 颜色和位置上都是变化的。由于光照和聚焦的不均匀性,使得场景文本识别的复杂度进一步增加。

 推荐!最适合初学者的18个经典开源计算机视觉项目     

下边这些流行的数据集将会丰富你分析场景文字检测的技能:

  1. SVHN

    街景门牌号码(SVHN)数据集是其中最受欢迎的开源数据集之一。它已用于Google创建的神经网络中,以读取门牌号并将其与地理位置匹配。这是一个很好的基准数据集,可用于练习, 学习和训练可准确识别街道编号的模型。此数据集包含从Google街景视图中获取的超过60万张带标签的真实房门图像。

  2. SceneText数据集

    场景文本数据集包含在不同环境中捕获的3000张图像,包括在不同光照条件下的室外和室内场景。图像是通过使用高分辨率数码相机或低分辨率移动电话相机捕获的。此外,所有图像均已调整为640×480。

此外,场景文本检测是一个两步过程,包括图像中的文本检测和文本识别。对于文本检测,我发现了最先进的深度学习方法EAST(高效准确场景文本检测器)。它可以找到水平和旋转边界框。您可以将其与任何文本识别方法结合使用。

这是有关场景文本检测的其他一些有趣的论文:

  • 使用链接主义文本提议网络检测自然图像中的文本

  • COCO-Text:用于自然图像中文本检测和识别的数据集和基准

使用DETR进行目标检测的开源计算机视觉项目

目标检测是通过边界框以及图像上的适当标签预测图像中存在的每个感兴趣对象的任务。

几个月前,Facebook开源了其对象检测框架DEtection TRansformer(DETR)。DETR是针对目标检测问题的高效创新解决方案。通过将对象检测视为直接设置的预测问题,它简化了训练管道。此外,它采用基于变压器的编码器-解码器架构。 推荐!最适合初学者的18个经典开源计算机视觉项目

要了解有关DERT的更多信息,请参见论文和Colab notebook。

通过处理以下用于对象检测的开源数据集来使您的资料多样化:

  1. open Images

    Open Image是约900万张图像的数据集,其中标注了图像级标签,对象边界框,对象分割掩码,视觉关系和本地化描述。数据集分为训练集(9,011,219张图像),验证集(41,620张图像)和测试集(125,436张图像)。

  2. MSCOCO

    MS-COCO是广泛用于目标检测问题的大规模数据集。它由33万张图像组成,其中包含80个对象类别,每个图像有5个标注,并有25万关键点。

您可以阅读以下资源以了解有关对象检测的更多信息:

  • 基本对象检测算法的分步介绍

  • 使用流行的YOLO框架进行对象检测的实用指南

  • Facebook AI推出检测转换器(DETR)–一种基于transformer的对象检测方法! 

用于语义分割的开源计算机视觉项目

当我们谈论计算机视觉技术中对场景的完全理解时,语义分割就出现了。任务是将图像中的所有像素分类为相关对象类别。

 

以下是实践该主题的开源数据集的列表:

  1. CamVid

    该数据库是开源的第一个按语义分割的数据集之一。这通常用于(实时)语义分割研究中。数据集包含:

    367个训练对

    101个验证对

    233个测试对

  2. Cityscapes

    该数据集是原始城市景观的经过处理的子样本。数据集具有原始视频的静止图像,并且语义分割标签显示在原始图像旁边的图像中。这是用于语义分割任务的最佳数据集之一。它具有2975个训练图像文件和500个验证图像文件,每个图像文件均为256×512像素

要进一步了解语义分段,我将推荐以下文章:

  • 语义分割:Google Pixel相机背后的深度学习技术简介!

以下是一些可用于语义分割的代码的论文:

  • 带有空洞可分离卷积的编码器-解码器用于语义图像分割

  • DeepLab:使用深度卷积网络,空洞卷积和完全连接的CRF的语义图像分割

用于自动驾驶车辆道路车道检测的开源计算机视觉项目

一个自主轿车是能够感知周围环境,并无需人类干预就能操作的交通工具。他们根据适合车辆不同部分的各种传感器创建并维护周围环境的地图。

这些车辆具有监视附近车辆位置的雷达传感器。摄像机检测交通信号灯,读取路标,跟踪其他车辆以及激光雷达(光检测和测距)传感器从汽车周围反射光脉冲以测量距离,检测道路边缘并识别车道标记

车道检测是这些车辆的重要组成部分。在公路运输中,车道是行车道的一部分,被指定用于单行车辆来控制和引导驾驶员并减少交通冲突。

推荐!最适合初学者的18个经典开源计算机视觉项目

在您的数据科学家的简历中添加一个令人兴奋的项目。以下是一些可用于实验的数据集-

  1. TUsimple

    该数据集是Tusimple车道检测挑战赛的一部分。它包含3626个视频片段,每个片段1秒。这些视频剪辑中的每一个都包含20帧,并带有带注释的最后一帧。它包含训练和测试数据集,其中包含3626个视频片段,训练数据集中的3626个带注释的帧和2782个用于测试的视频片段。

如果您正在寻找一些开发项目的教程,请查看下面的文章-

  • 使用OpenCV进行实时车道检测的动手教程(无人驾驶汽车项目!)

用于图像标注的开源计算机视觉项目

您是否曾经希望过一些可以为社交媒体图像添加标注的技术,因为您和您的朋友都无法提出超酷的标注?用于图像标注的深度学习助您一臂之力。

图像标注是为图像生成文本描述的过程。它是计算机视觉和自然语言处理(NLP)的组合任务。

计算机视觉方法有助于理解并从输入图像中提取特征。此外,NLP以正确的单词顺序将图像转换为文本描述。

推荐!最适合初学者的18个经典开源计算机视觉项目    

以下是一些有用的数据集,可帮助您使用图像标注:

  1. COCO Caption

    COCO是大规模的对象检测,分割和标注数据集。它由330万张图像(标有> 200K)组成,具有150万个对象实例和80个对象类别,每个图像有5个标题。

  2. Ficker 8K 数据集

    它是一个图像标注语料库,由158,915个众包字幕组成,描述了31,783张图像。这是Flickr 8k数据集的扩展 。新的图像和标注集中于进行日常活动和事件的人们。

如果您正在寻找项目的实施,我建议您看下面的文章:

  • 在PyTorch中使用深度学习(CNN和LSTM)进行自动图像字幕

另外,我建议您阅读有关图像标注的著名论文。

用于人体姿势估计的开源计算机视觉项目

人体姿势估计是计算机视觉的有趣应用。您一定已经听说过Posenet,它是用于人体姿势估计的开源模型。简而言之,姿势估计是一种计算机视觉技术,可以推断图像/视频中存在的人或物体的姿势。

在讨论姿势估计的工作之前,让我们首先了解“人体姿势骨架”。它是定义一个人的姿势的一组坐标。一对坐标是肢体。此外,通过识别,定位和跟踪图像或视频中人类姿势骨架的关键点来执行姿势估计。

 推荐!最适合初学者的18个经典开源计算机视觉项目

资源

如果要开发姿势估计模型,以下是一些数据集:

  1. MPII

    MPII Human Pose数据集是评估关节式姿势估计的最新基准。该数据集包含约25K图像,其中包含超过4 万名带注释的人体关节的人。总体而言,数据集涵盖410种人类活动,每个图像都有一个活动标签。

  2. HUMANEVA

    HumanEva-I数据集包含与3D人体姿势同步的7个校准视频序列。该数据库包含执行6个常见动作(例如,步行,慢跑,打手势等)的4个主题,这些动作被分为训练,验证和测试集。

我发现Google的DeepPose是一篇使用深度学习模型进行姿势估计非常有趣的研究论文。此外,您可以访问有关姿势估计的多个研究论文,以更好地理解它。

通过面部表情进行情感识别的开源计算机视觉项目

面部表情在非语言交流以及识别人的过程中起着至关重要的作用。它们对于识别人的情绪非常重要。因此,关于面部表情的信息通常用于情绪识别的自动系统中。

情绪识别是一项具有挑战性的任务,因为情绪可能会因环境,外观,文化和面部反应而异,从而导致数据不明确。

面部表情识别系统是一个多阶段过程,包括面部图像处理,特征提取和分类。

推荐!最适合初学者的18个经典开源计算机视觉项目

 资源

以下是您可以用来练习的数据集:

  1. Real-world Affective Faces Database

    真实世界的情感面孔数据库(RAF-DB)是一个大规模的面部表情数据库,包含约3万张多种多样的面部图像。它由29672个真实世界的图像和每个图像的7维表情分布矢量组成,

您可以阅读这些资源,以进一步了解您的内容-

  • 用于视频中的面部表情识别框架注意力网络

  • 姿势和遮挡鲁棒面部表情识别的区域注意网络

尾注

总而言之,在本文中,我们讨论了可以作为初学者实现的10个有趣的计算机视觉项目。这不是一个详尽的清单。因此,如果您觉得我们错过了什么,请随时在下面的评论中添加!

另外,在这里,我列出了一些有用的CV资源,以帮助您探索深度学习和计算机视觉世界:

  • 这是您在2020年掌握计算机视觉的学习途径

  • 使用深度学习2.0课程的计算机视觉

  • 认证项目:初学者的计算机视觉

  • 神经网络入门 (免费)

  • 从零开始的卷积神经网络(CNN)(免费)

我们在课程和自我练习中学习的数据科学与我们在行业中工作的数据科学有很多差异。我建议您参加这些非常清晰宝贵的免费课程,以了解有关分析,机器学习和人工智能的所有信息:

  • 机器学习/人工智能免费课程的简介 |移动app

  • 机器学习人工智能商业领导者移动APP简介

  • 商业分析免费课程的简介|移动app

我希望你能够觉得这次的讨论对您有意义, 现在轮到你开始自己应用计算机视觉了。


http://www.ppmy.cn/news/554969.html

相关文章

社交效率管理,你get了么?——做一款基于日程的联系人管理工具

目录 一、遇到的问题 (一)、突飞猛进的联系人数量和管理跟不上之间的矛盾问题 (二)、联系人多重身份的问题 (三)、趋势分析的问题 二、寻求改变 (一)、联系人管理的起点&#…

博士年薪22-40万,重点大学博士给100㎡产权房,安家费30-40万,省会城市高校 | 留言送书...

来源 | 高校人才网V 编辑 | 论文项目硕博招聘 一、学校简介 郑州工业应用技术学院位于中国历史文化古都河南省新郑市,是经教育部批准、中原华信商贸集团有限公司投资举办的一所全日制普通民办本科院校。 历史沿革学校创建于1997年,2008年升格为本科高校&…

泪目!兰大硕导的《致谢》火了:我从来不曾优秀过,也从来不曾放弃过!

本文来源:《国科大》2019年第3期 作者:赵序茅老师、澎湃新闻(岳怀让) 编辑:募格学术 考研刚结束没多久,这几天,兰州大学硕导赵序茅刊登在《国科大》2019年第3期的一篇文章《毕业致谢&#xff1a…

女研究生做“思维导图”与男友吵架!网友:吵架届的“内卷之王”....

本文募格学术撰写。参考资料:抖音、女教授跟生活的死磕、极目新闻(记者:丁伟) 、亚辉、麦穗视频、潇湘晨报、知乎、微博等。 研究生吵起架来的“职业病”有哪些? 近日,湖南长沙一女研究生因为“画思维导图与…

IRS应用发布之十五:应用安全自测指南

安全要求 系统使用所有第三方组件必须为最新无已知公开漏洞版本。 上架应用必须配置并使用SSL协议, 并且代码和提供的服务中也都使用https协议。 上架应用必须使用浙里办账号体系,使用提供的浙里办免登接口获取用户身份信息,禁止自建登陆体系。 上架应用所有接口都需要结合有…

要么到岗,要么离职!马斯克:特斯拉「远程办公」到此结束

作者丨David 来源丨新智元 【导读】马斯克连发两封邮件,特斯拉「远程办公」宣布结束,全员每周必须办公室到岗至少40小时,不愿意来的可以走人。 疫情汹涌,「居家办公」早已成为热词。 无论企业大小,员工老幼&#xff0c…

DeepFake捏脸真假难辨,汤姆·克鲁斯比本人还像本人!

作者丨Aeneas 拉燕 来源丨新智元 【导读】在网上,不断冒出的Deepfake视频让人们难辨真假。Tiktok上的假汤姆克鲁斯已经拥有了360万粉丝。Deepfake的门槛变低,也带来了源源不断的问题…… 在世界上最受欢迎的社交媒体平台之一TikTok上,源源不断…

Android开发框架大全-AndroidFrames

github地址 :https://github.com/linhaosheng/AndroidFrames AndroidFrames是一个集合了一些在日常开发是使用到的开源框架,包括网络请求,Gson解析,Glide图片加载,适配器,对话框,权限检查&…

打车软件系统分析与设计方案

摘要 本文是笔者软件工程与方法课的课程作业,从中国网约车行业的发展历程及市场现状出发,立足于当下市场需求,以期设计一款具有市场竞争力的打车软件。本文首先对打车软件进行需求分析,然后采用SA方法及DFD描述工具进行系统…

通过车牌号查车辆信息的方法有哪些?

牌照也叫车牌,是指车辆号牌,根据车牌号可以查到车主电话,可查到车辆的主人姓名以及车辆的登记信息。 通过车牌号还可以查到的信息包括行驶证上的发动机号,车架号和初次登记日期以及车辆的年检日期,出厂日期和使用性质…

基于树莓派车牌识别门禁系统

基于树莓派车牌识别门禁系统 前言开发环境源码硬件效果演示后记 前言 毕业设计想做一个集大学所自学过的所有语言,再加上嵌入式的完整应用类型。但由于疫情的原因,没办法完整的展现。不过中间还是自己一系列将前端、后端、前后端交互、数据库以及Androi…

用Python拨打电话

用python拨打电话,先看小视频 Python自动化技术广泛应用于测试、运维相关领域,我自己现在也是做的这方面,工资也不比其他方向少,就业相对容易的多,而且需求的公司也多,对后端框架之类也要求不是很高&#x…

java——反射与注解

文章目录 Java反射基础1. 概念详解2. 示例代码 Java反射进阶1. 框架设计2. 动态代理3. 模板方法 Java注解基础1. 概念2. 基本语法3. 自定义注解4. 反射获取注解信息 Java注解进阶1. 应用场景2. 内置注解3. 第三方注解库4. 总结 Java反射与注解实战1. 实战场景2. 代码实现 Java反…

【Java 基础篇】Java 修饰符:掌握代码的灵魂之钥

文章目录 导言一、访问修饰符二、非访问修饰符1、final修饰符2、static修饰符3、abstract修饰符4、synchronized修饰符 三、修饰符的组合使用总结 导言 在Java编程中,修饰符是一种关键元素,用于控制类、方法、变量和构造函数的访问性、行为和特性。Java…

深入地下,实地探访!不用人挖煤的智能煤矿长什么样?

来源:脑极体 未来智能实验室的主要工作包括:建立AI智能系统智商评测体系,开展世界人工智能智商评测;开展互联网(城市)云脑研究计划,构建互联网(城市)云脑技术和企业图谱&…

煤泥水处理方法

1.一种煤泥水处理方法,其特征在于:包括以下步骤: (1)、将煤炭洗选后的煤泥水通过管道输送到洗煤厂内的底流浓缩池,向底流浓缩池内加入絮凝剂将煤泥水浓缩,使得煤泥水中的含固量达到300~400g/L; (2)、将浓缩…

浅谈智慧矿山之智慧矿山建设的目的

自从王国法院士向国家提出智慧矿山建设的时间规划之后,在煤矿系统的圈子里,大家交流最多的就是智能化、智慧化,谁都可以讲几句,说点东西出来。但是我们为什么要建设智慧矿山呢?很多人也在问,很多回答都是见…

搞IT就像挖煤一样

从19世纪70年代开始,一直到20世纪30年代的大萧条时期,煤矿工人都在忍受着雇主们的剥削。煤炭公司极大地剥削工人以获取最大利益:工作环境复杂多变,有些地方简陋不堪甚至极度危险。工资由工人从矿场里开采出的煤炭重量决定&#xf…

挖空的煤矿能否储存石油

挖空的煤矿能否储存石油 红朝儒生 2016-9-3 关键字:煤矿 存储 石油 简介:挖空的煤矿,会形成塌陷区,带来各种灾害和破坏。能不能利用起来存储石油? 中国是个煤矿大国,从改开以来大量开采,包括取…

一次挖矿入侵处理记录(2021.01.27)

https://github.com/bg6cq/ITTS/blob/master/security/mine/README.md 转自上面链接,也是我的亲身经历,供大家学习。网络安全大家引以为戒。爱闹的小兄弟们,别闹了啊,让张老师花了好几天的心思在你们弄得事情上。 [原创]一次挖矿…