将深度学习与传统计算机视觉进行比较

news2024/11/26 3:50:45

原创 | 文 BFT机器人 

深度学习 (DL) 在数字图像处理中用于解决难题(例如,图像着色、分类、分割和检测)。卷积神经网络 (CNN) 等深度学习方法通过使用大数据和丰富的计算资源提高预测性能,突破了可能性的界限。

深度学习是机器学习的一个子集。

人工神经网络 (ANN) 是一种受人脑功能启发的计算范式,是深度学习的核心。它包含许多计算单元或“神经元”,它们执行简单的操作并相互交互以做出决定,就像人脑一样。深度学习是关于准确、高效、无监督学习或跨越许多神经网络层的“信用分配”

由于处理硬件的进步,它最近引起了人们的兴趣。自组织和利用小型单元之间的交互已被证明比中央控制执行得更好,特别是对于复杂的非线性过程模型。可以实现更好的容错性和对新数据的适应性。

深度学习是否导致传统计算机视觉(CV) 技术过时?深度学习是否取代了传统的计算机视觉?当 DL 看起来如此有效时,是否还有必要研究传统的 CV 技术?这些都是近年来社会上提出的问题。这篇文章将提供深度学习和传统计算机视觉的比较。

01

深度学习的优势

深度学习和设备功能(例如计算能力、内存容量、图像传感器分辨率、功耗和光学)的快速进步提高了基于视觉的应用程序的性能和成本效益,加速了它们的传播。

与传统的 CV 技术 (SLAM) 相比,DL 允许 CV 工程师在图像分类、语义分割、对象检测以及同时定位和映射方面实现更高的准确性。因为 DL 应用程序使用经过训练而非编程的神经网络。他们通常需要较少的专家分析和微调,并且可以利用当今系统中可用的海量视频数据。

与更多领域特定的 CV 算法相比,我们可以以移动机器人上的目标检测问题为例来比较这两种计算机视觉算法:对于目标检测,传统方法是使用成熟的 CV 技术,如特征描述符(SIFT、SURF、BRIEF 和很快)。

在 DL 出现之前,特征提取用于图像分类等任务。特征是图像中“有趣的”、描述性的或提供信息的小块。此步骤可能涉及各种 CV 算法,例如边缘检测、角点检测或阈值分割。分析图像的尽可能多的特征,这些特征用于为每个对象类创建一个定义(称为词袋)。在部署阶段在其他图像中搜索这些定义。

传统方法的问题在于它需要确定每个图像中哪些特征是重要的。

随着要分类的类别数量的增加,特征提取变得越来越困难。为了确定哪些特征最能描述不同类别的对象,CV 工程师必须使用他或她的判断并经历漫长的试错过程。此外,每个特征定义都需要管理大量参数,CV 工程师必须对所有这些参数进行微调。

端到端学习是由 DL 引入的,其中机器只是简单地获得一个图像数据集,并用每个图像中存在的对象类别进行注释。

众所周知,DNN 优于传统算法,尽管需要在计算要求和训练时间方面做出权衡。所有最先进的 CV 方法都使用这种方法,CV 工程师的工作流程发生了巨大变化,提取手工制作特征的知识和专业知识被迭代深度学习架构的知识和专业知识所取代。

近年来,CNN 的发展对 CV 产生了巨大的影响,并导致物体识别能力的显着提高。计算能力的提高和可用于训练神经网络的数据量的增加使得这种进步得以实现。

开创性论文 ImageNet Classification with Deep Convolutional Neural Networks 已被引用超过 3000 次,这表明最近 CV 的各种深度神经网络架构呈爆炸式增长并得到广泛采用。CNN 使用内核(也称为过滤器)来检测整个图像的特征(例如边缘)。

内核只是经过训练以检测特定特征的值的加权矩阵。

顾名思义,CNN 背后的主要思想是在给定输入图像上对内核进行空间卷积,以查看是否存在它应该检测的特征。

卷积运算通过计算核与核重叠的输入区域的点积来执行,以提供一个值,该值表示存在特定特征的置信度(核正在查看的原始图像区域是称为感受野)。卷积层的输出与偏置项相加,然后馈送到非线性激活函数以帮助学习内核权重。

这些激活函数是根据数据的性质和分类任务来选择的。例如,ReLU 被认为具有更高的生物学表现(大脑中的神经元要么放电,要么不放电)。因此,它产生更稀疏、更有效的表示,并且不易受消失梯度问题的影响,从而为图像识别任务带来更好的结果。

池化层经常跟在卷积层之后,以去除输入特征中的冗余,从而加快训练过程并减少网络消耗的内存量。

例如,Max-pooling 在输入上移动一个窗口并输出该窗口中的最大值,从而有效地减少图像的重要像素。卷积层和池化层可以在深度 CNN 中以多对形式找到。

最后,全连接层将前一层的体积扁平化为特征向量,然后是使用密集网络计算输出类/特征的分数(置信度或概率)的输出层。然后将此数据输入回归函数(如 Softmax),它将所有内容映射到具有一个元素的向量。

然而,DL 仍然主要是一种 CV 工具;例如,CV 中最常见的神经网络是 CNN。但是,卷积到底是什么?这是一种流行的图像处理方法(例如,Sobel 边缘检测)。DL 的好处是显而易见的,对最新技术的回顾超出了本文的范围。深度学习不是解决所有问题的灵丹妙药;在一些问题和应用中,更传统的 CV 算法更合适。

02

传统计算机视觉的优势

传统的基于特征的方法(例如下面列出的方法)有助于提高 CV 任务的性能:

  • 尺度不变特征变换 (SIFT)。

  • 加速稳健特征 (SURF)

  • 加速分段测试 (FAST) 的功能

  • 霍夫变换

  • 几何哈希

像SIFT和SURF这样的特征描述符通常与传统的机器学习分类算法如支持向量机和KNearest Neighbors相结合来解决CV问题。

传统的 CV 技术通常可以比 DL 更有效地解决问题,并且代码行数更少,因此 DL 有时有点矫枉过正。SIFT 甚至简单的颜色阈值和像素计数算法都不是类特定的;他们处理任何图像。另一方面,从深度神经网络学习的特征是特定于您的训练数据集的,如果构建不当,则不太可能对训练集以外的图像表现良好。

因此,图像拼接/3D 网格重建经常使用 SIFT 和其他不需要特定类别知识的算法来执行。大型数据集可用于完成这些任务。然而,这需要大量的研究,这对于封闭的应用程序是不可行的。在决定为特定的 CV 应用程序采取哪条路径时,请使用常识。

例如,在流水线传送带上,对两个产品类别进行分类,一个使用红色油漆,另一个使用蓝色油漆。如果可以收集足够的数据进行训练,深度神经网络就会起作用。另一方面,简单的颜色阈值处理可以达到相同的结果。可以使用更简单、更快速的方法来解决一些问题。

如果 DNN 在训练数据之外表现不佳会怎样?如果训练数据集太小,机器可能会过度拟合数据,无法泛化到手头的任务。由于 DNN 具有数百万个相互关系复杂的参数,因此手动调整模型的参数太困难了。DL模型以这种方式被批评为黑匣子。传统的 CV 是完全透明的,允许您评估您的解决方案是否适用于训练集之外。如果出现任何问题,可以调整参数以在更广泛的图像范围内表现良好。

当问题可以简化以部署在低成本微控制器上或通过突出数据中的某些特征、扩充数据或协助数据集注释来限制深度学习技术的问题时,今天使用传统技术。我们将在本文后面介绍各种图像转换技术,以帮助您改进神经网络训练。

最后,CV 中许多更难的问题,如机器人、增强现实、自动全景拼接、虚拟现实、3D 建模、运动估计、视频稳定、运动捕捉、视频处理和场景理解,都无法通过深度学习轻松解决,但受益于使用“传统”技术的解决方案。

文章参考:《Deep Learning Vs. Traditional Computer Vision – A Comparison》

 

更多精彩内容请关注公众号:BFT机器人

本文为原创文章,版权归BFT机器人所有,如需转载请与我们联系。若您对该文章内容有任何疑问,请与我们联系,将及时回应。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

学习一年Java的程序员的C++学习记录(指针引用绕晕记)

文章目录 一 C入门二 变量和数据类型三 运算符四 流程控制五 复合数据类型六 函数七 函数高阶八 面向对象 一 C入门 标准输出流中 cout 是一个ostream对象&#xff0c;<< 和 >>是C中经过重载的运算符&#xff0c;配合cout和cin使用时表示流运算符。C中是如何重载运…

苹果头显Vision Pro深度解读1 下一个十年计算机行业的标杆

1 苹果Vision Pro是下一个十年计算机行业的标杆。 今天主要给大家说下今年WWDC发布的vision pro&#xff0c;以及后面很多期给大家做一些vision pro背后大量的技术的分享。我这次是从头到位把苹果官网上所有的文档&#xff0c;视频&#xff0c;全部学习了一遍。好几十个视频文…

Stable Diffusion web UI之X/Y/Z plot使用

一、安装环境配置 PASS CFG Scale配置的越高&#xff0c;SD生成的图会更贴用户提供的prompt来进行生成&#xff0c;AI的自由度会下降&#xff0c;生成人物的时候特别需要注意&#xff0c;对于手脚脸部&#xff0c;过高的值更容易造成过拟合还有画面崩坏。 二、X/Y/Z plot 使用…

民间最大的社区,倒闭了

看到一则不起眼的消息&#xff1a;天涯社区已经无法打开。 时代抛弃你的时候&#xff0c;都不说一声再见&#xff0c;现实就是这样残酷。 记得我读大学的时候&#xff0c;天涯社区是国内互联网行业中最具影响力的论坛之一&#xff0c;号称 " 全球华人网上家园 “。 当年&a…

Maven配置仓库

目录 Maven仓库介绍 Maven配置本地仓库 Maven配置中央仓库 Maven配置远程仓库 配置jdk Maven仓库介绍 当使用 Maven 构建项目时&#xff0c;有三种仓库起着重要作用&#xff1a; 本地仓库&#xff1a;就像你自己的书库。当你使用 Maven 下载依赖项时&#xff0c;它们会被…

某企业《IT治理管理办法》共十个章节,五十九条管理要求,适用于集团级企业、大型企业、中型企业

第二条&#xff1a;IT治理是规范公司各部门在公司IT系统建设、IT 应用中的责任与权力分配&#xff0c;主要包括原则、IT架构、基础设施、IT应用、IT投入等方面&#xff0c;明确责任人以及决策权力人&#xff0c;以提升工作效率&#xff0c;提高决策的科学性和合理性。 总则的第…

HarmonyOS元服务端云一体化开发快速入门(下)

四、关联云开发资源 为工程关联云开发所需的资源&#xff0c;即在DevEco Studio中选择您的华为开发者帐号加入的开发者团队&#xff0c;将该团队在AGC的同包名应用关联到当前工程。具体操作如下&#xff1a; 1.&#xff08;可选&#xff09;如您尚未登录DevEco Studio&#xf…

深入理解ASEMI代理光宝LTV-152光耦的特性与应用

编辑-Z 光耦LTV-152是一种广泛应用于电子设备中的光电器件&#xff0c;它的主要功能是实现电路之间的隔离和信号传输。本文将深入探讨光耦LTV-152的特性和应用&#xff0c;帮助读者更好地理解和使用这种重要的电子元件。 一、光耦LTV-152的特性 1. 高隔离电压&#xff1a;光耦…

日撸java三百行day63-65

文章目录 说明1. Day63-65 AdaBoosting算法1 AdaBoostin举例1.1数据样本1.2 举例过程 2. 理论知识3. 总结 2. 代码理解1. WeightedInstances类2. 选择基分类器并进行训练&#xff08;树桩分类器&#xff09;3. 计算误差率和误差系数&#xff08;树桩分类器&#xff09;4. 计算精…

谈谈Java高并发网站的设计思路

目前Java都在流行一个说词&#xff1a;高并发。 反正不管是不是&#xff0c;反正就是高并发。 谈高并发&#xff0c;我们需要知道几个名词&#xff1a; -响应时间(Response Time&#xff0c;RT)-吞吐量(Throughput)-每秒查询率QPS(Query Per Second)-每秒事务处理量TPS(Transa…

用单元测试读懂 vue3 中的 defineComponen

目录 前言&#xff1a; I. 测试用例 II. 一些基础类型定义 III. 官网文档中的 props V. 开发实践 VI. 全文总结 前言&#xff1a; Vue3是一种流行的JavaScript框架&#xff0c;它在组件开发方面提供了更多的表现力和灵活性&#xff0c;通过使用defineComponent高阶函数&…

腾讯安全联动头部企业携手验证“数字安全免疫力”模型框架

6月13日&#xff0c;腾讯安全联合IDC发布“数字安全免疫力”模型框架及《加强企业数字安全免疫力&#xff0c;助力数字时代下的韧性发展》白皮书&#xff0c;提出用免疫的思维应对新时期下安全建设与企业发展难以协同的挑战&#xff0c;围绕“数据”和“数字业务”建立三层由内…

视觉SLAM十四讲——ch8实践(视觉里程计2)

视觉SLAM十四讲----ch8的实践操作及避坑 0.实践前小知识介绍1. 实践操作前的准备工作2. 实践过程2.1 LK光流2.2 直接法 3. 遇到的问题及解决办法3.1 编译时遇到的问题 0.实践前小知识介绍 里程计的历史渊源是什么&#xff1f; 里程计是一种用来测量车辆或机器人行驶距离的装置…

Uniapp uni-app学习与快速上手

个人开源uni-app开源项目地址&#xff1a;准备中 在线展示项目地址&#xff1a;准备中 什么是uni-app uni&#xff0c;读 you ni&#xff0c;是统一的意思。 Dcloud即数字天堂(北京)网络技术有限公司是W3C成员及HTML5中国产业联盟发起单位&#xff0c;致力于推进HTML5发展构…

MP : Human Motion 人体运动的MLP方法

Back to MLP: A Simple Baseline for Human Motion Prediction conda install -c conda-forge easydict 简介 papercodehttps://arxiv.org/abs/2207.01567v2https://github.com/dulucas/siMLPe Back to MLP是一个仅使用MLP的新baseline,效果SOTA。本文解决了人类运动预测的问…

iconfont彩色图标

进入阿里巴巴矢量图标库iconfont-阿里巴巴矢量图标库&#xff0c;添加图标到项目&#xff0c;然后下载至本地 解压后的本地文件如下&#xff0c;核心的是 iconfont.eot 文件 2.打开电脑命令行&#xff0c;执行以下命令&#xff0c;全局安装 iconfont-tools 转换工具 npm insta…

创新指南 | 推动销售的17个可落地的集客式营销示例

无论您是开启集客式的营销有一段时间还是处于起步阶段&#xff0c;了解像您这样的企业是如何粉碎竞争对手的的集客式策略总是有帮助的。无论您的公司做什么&#xff0c;它所服务的行业&#xff0c;是B2B还是B2C &#xff0c;您都可以在这里找到许多可以使用的示例。 在本文中&…

rtklib短基线分析(香港基站)

1、下载香港基站 用filezilla下载&#xff0c;地址ftp://ftp.geodetic.gov.hk 下载hklt、hkkt&#xff0c;这两座站的观测值及星历&#xff0c;必须同一天。用crx2rnx工具解压。 2、打开rtklib的RTKPOST&#xff0c;输入文件&#xff0c;如下图所示。 选择static模式&#xf…

C语言进阶--指针(C语言灵魂)

目录 1.字符指针 2.指针数组 3.数组指针 4.数组参数与指针参数 4.1.一维数组传参 4.2.二维数组传参 4.3.一级指针传参 4.4.二级指针传参 5.函数指针 6.函数指针数组 7.指向函数指针数组的指针 8.回调函数 qsort函数 9.指针和数组笔试题 10.指针笔试题 前期要点回…

《机器学习公式推导与代码实现》chapter10-AdaBoost

《机器学习公式推导与代码实现》学习笔记&#xff0c;记录一下自己的学习过程&#xff0c;详细的内容请大家购买作者的书籍查阅。 AdaBoost 将多个单模型组合成一个综合模型的方式早已成为现代机器学习模型采用的主流方法-集成模型(ensemble learning)。AdaBoost是集成学习中…