0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

主流的机器视觉技术又有哪些呢?

新机器视觉 来源:长虹AI实验室 2023-05-26 14:53 次阅读

导语:视觉是人类最敏感、最直接的感知方式,在不进行实际接触的情况下,视觉感知可以使得我们获取周围环境的诸多信息。由于生物视觉系统非常复杂,目前还不能使得某一机器系统完全具备这一强大的视觉感知能力。

当下,机器视觉的目标即,构建一个在可控环境中处理特定任务的机器视觉系统。由于工业中的视觉环境可控,并且处理任务特定,所以现如今大部分的机器视觉被应用在工业当中。

人类视觉感知是通过眼睛视网膜的椎体和杆状细胞对光源进行捕捉,而后由神经纤维将信号传递至大脑视觉皮层,形成我们所看到的图像,而机器视觉却不然。机器视觉系统的输入是图像,输出是对这些图像的感知描述。这组描述与这些图像中的物体或场景息息相关,并且这些描述可以帮助机器来完成特定的后续任务,指导机器人系统与周围的环境进行交互。

3f8e3a2a-fb83-11ed-90ce-dac502259ad0.png

那么,迄今为止,主流的机器视觉技术又有哪些呢?

3f98be3c-fb83-11ed-90ce-dac502259ad0.png

中流砥柱

卷积神经网络

3f98be3c-fb83-11ed-90ce-dac502259ad0.png

卷积神经网络是目前计算机视觉中使用最普遍的模型结构。引入卷积神经网络进行特征提取,既能提取到相邻像素点之间的特征模式,又能保证参数的个数不随图片尺寸变化。上图是一个典型的卷积神经网络结构,多层卷积和池化层组合作用在输入图片上,在网络的最后通常会加入一系列全连接层,ReLU激活函数一般加在卷积或者全连接层的输出上,网络中通常还会加入Dropout来防止过拟合。

自2012年AlexNet在ImageNet比赛上获得冠军,卷积神经网络逐渐取代传统算法成为了处理计算机视觉任务的核心。

在这几年,研究人员从提升特征提取能力,改进回传梯度更新效果,缩短训练时间,可视化内部结构,减少网络参数量,模型轻量化, 自动设计网络结构等这些方面,对卷积神经网络的结构有了较大的改进,逐渐研究出了AlexNet、ZFNet、VGG、NIN、GoogLeNet和Inception系列、ResNet、WRN和DenseNet等一系列经典模型,MobileNet系列、ShuffleNet系列、SqueezeNet和Xception等轻量化模型。

3fa3acc0-fb83-11ed-90ce-dac502259ad0.png

·卷积网络示意图

经典模型(AlexNet):

AlexNet是第一个深度神经网络,其主要特点包括:

1. 使用ReLU作为激活函数。

2. 提出在全连接层使用Dropout避免过拟合。注:当BN提出后,Dropout就被BN替代了。

3. 由于GPU显存太小,使用了两个GPU,做法是在通道上分组。

4. 使用局部响应归一化(Local Response Normalization --LRN),在生物中存在侧抑制现象,即被激活的神经元会抑制周围的神经元。在这里的目的是让局部响应值大的变得相对更大,并抑制其它响应值相对比较小的卷积核。例如,某特征在这一个卷积核中响应值比较大,则在其它相邻卷积核中响应值会被抑制,这样一来卷积核之间的相关性会变小。LRN结合ReLU,使得模型提高了一点多个百分点。

5. 使用重叠池化。作者认为使用重叠池化会提升特征的丰富性,且相对来说会更难过拟合。

3fab6ac8-fb83-11ed-90ce-dac502259ad0.png

集大成之作(ResNet):

一般而言,网络越深越宽会有更好的特征提取能力,但当网络达到一定层数后,随着层数的增加反而导致准确率下降,网络收敛速度更慢。

传统的卷积网络在一个前向过程中每层只有一个连接,ResNet增加了残差连接从而增加了信息从一层到下一层的流动。FractalNets重复组合几个有不同卷积块数量的并行层序列,增加名义上的深度,却保持着网络前向传播短的路径。相类似的操作还有Stochastic depth和Highway Networks等。这些模型都显示一个共有的特征,缩短前面层与后面层的路径,其主要的目的都是为了增加不同层之间的信息流动。

后起之秀

Transformers

3fbd3cbc-fb83-11ed-90ce-dac502259ad0.png

Transformer是一种self-attention(自注意力)模型架构,2017年之后在NLP领域取得了很大的成功,尤其是序列到序列(seq2seq)任务,如机器翻译和文本生成。2020年,谷歌提出pure transformer结构ViT ,在ImageNet分类任务上取得了和CNN可比的性能。之后大量ViT衍生的Transformer架构在ImageNet上都取得了成功。

Transformer 与 CNN相比优点是具有较少的归纳性与先验性,因此可以被认为是不同学习任务的通用计算原语,参数效率与性能增益与 CNN 相当。不过缺点是在预训练期间,对大数据机制的依赖性更强,因为 Transformer 没有像 CNN 那样定义明确的归纳先验。因此当下出现了一个新趋势:当 self-attention 与 CNN 结合时,它们会建立强大的基线( BoTNet )。

Vision Transformer(ViT)将纯Transformer架构直接应用到一系列图像块上进行分类任务,可以取得优异的结果。它在许多图像分类任务上也优于最先进的卷积网络,同时所需的预训练计算资源大大减少。

3fc52c24-fb83-11ed-90ce-dac502259ad0.png

DETR是第一个成功地将Transformer作为pipeline中的主要构建块的目标检测框架。它与以前的SOTA方法(高度优化的Faster R-CNN)的性能匹配,具有更简单和更灵活的pipeline。

3fcc0abc-fb83-11ed-90ce-dac502259ad0.png

Transformer的变体模型是目前的研究热点,主要分为以下几个类型:1)模型轻量化;2)加强跨模块连接;3)自适应的计算时间;4)引入分而治之的策略;4)循环Transformers;5)等级化的Transformer。

欺骗机器的眼睛

对抗性示例

最近引起研究界注意的一个问题是这些系统对对抗样本的敏感性。一个对抗性的例子是一个嘈杂的图像,旨在欺骗系统做出错误的预测。为了在现实世界中部署这些系统,它们必须能够检测到这些示例。为此,最近的工作探索了通过在训练过程中包含对抗性示例来使这些系统更强对抗性攻击的可能性。

现阶段对模型攻击的分类主要分为两大类,即攻击训练阶段和推理阶段。

训练阶段的攻击

训练阶段的攻击(Training in Adversarial Settings),主要的方法就是针对模型的参数进行微小的扰动,从而达到让模型的性能和预期产生偏差的目的。例如直接通过对于训练数据的标签进行替换,让数据样本和标签不对应,从而最后训练的结果也一定与预期的产生差异,或者通过在线的方式获得训练数据的输入权,操纵恶意数据来对在线训练过程进行扰动,最后的结果就是产出脱离预期。

推理阶段的攻击

推理阶段的攻击(Inference in Adversarial Settings),是当一个模型被训练完成后,可以将该模型主观的看作是一个盒子,如果该盒子对我们来说是透明的则可以将其看成“白盒”模型,若非如此则看成“黑盒”模型。所谓的“白盒攻击”,就是我们需要知道里面所有的模型参数,但这在实际操作中并不现实,却有实现的可能,因此我们需要有这种前提假设。黑盒攻击就比较符合现实生活中的场景:通过输入和输出猜测模型的内部结构;加入稍大的扰动来对模型进行攻击;构建影子模型来进行关系人攻击;抽取模型训练的敏感数据;模型逆向参数等等。

对抗攻击的防御机制。抵御对抗样本攻击主要是基于附加信息引入辅助块模型(AuxBlocks)进行额外输出来作为一种自集成的防御机制,尤其在针对攻击者的黑盒攻击和白盒攻击时,该机制效果良好。除此之外防御性蒸馏也可以起到一定的防御能力,防御性蒸馏是一种将训练好的模型迁移到结构更为简单的网络中,从而达到防御对抗攻击的效果。

对抗学习的应用举例,1、自动驾驶;2、金融欺诈。

自动驾驶是未来智能交通的发展方向,但在其安全性获得完全检验之前,人们还难以信任这种复杂的技术。虽然许多车企、科技公司已经在这一领域进行了许多实验,但对抗样本技术对于自动驾驶仍然是一个巨大的挑战。几个攻击实例:对抗攻击下的图片中的行人在模型的面前隐身,对抗样本使得模型“无视”路障;利用 AI 对抗样本生成特定图像并进行干扰时,特斯拉的 Autopilot 系统输出了「错误」的识别结果,导致车辆雨刷启动;在道路的特定位置贴上若干个对抗样本贴纸,可以让处在自动驾驶模式的汽车并入反向车道;在Autopilot 系统中,通过游戏手柄对车辆行驶方向进行控制;对抗样本使得行人对于机器学习模型“隐身”。

自学也能成才

自监督学习

深度学习需要干净的标记数据,这对于许多应用程序来说很难获得。注释大量数据需要大量的人力劳动,这是耗时且昂贵的。此外,数据分布在现实世界中一直在变化,这意味着模型必须不断地根据不断变化的数据进行训练。自监督方法通过使用大量原始未标记数据来训练模型来解决其中的一些挑战。在这种情况下,监督是由数据本身(不是人工注释)提供的,目标是完成一个间接任务。间接任务通常是启发式的(例如,旋转预测),其中输入和输出都来自未标记的数据。定义间接任务的目标是使模型能够学习相关特征,这些特征稍后可用于下游任务(通常有一些注释可用)。

自监督学习是一种数据高效的学习范式。监督学习方法教会模型擅长特定任务。另一方面,自监督学习允许学习不专门用于解决特定任务的一般表示,而是为各种下游任务封装更丰富的统计数据。在所有自监督方法中,使用对比学习进一步提高了提取特征的质量。自监督学习的数据效率特性使其有利于迁移学习应用。

目前的自监督学习领域可大致分为两个分支。一个是用于解决特定任务的自监督学习,例如上次讨论的场景去遮挡,以及自监督的深度估计、光流估计、图像关联点匹配等。另一个分支则用于表征学习。有监督的表征学习,一个典型的例子是ImageNet分类。而无监督的表征学习中,最主要的方法则是自监督学习。

自监督学习方法依赖于数据的空间和语义结构,对于图像,空间结构学习是极其重要的,因此在计算机视觉领域中的应用广泛。一种是将旋转、拼接和着色在内的不同技术被用作从图像中学习表征的前置任务。对于着色,将灰度照片作为输入并生成照片的彩色版本。另一种广泛用于计算机视觉自监督学习的方法是放置图像块。一个例子包括 Doersch 等人的论文。在这项工作中,提供了一个大型未标记的图像数据集,并从中提取了随机的图像块对。在初始步骤之后,卷积神经网络预测第二个图像块相对于第一个图像块的位置。还有其他不同的方法用于自监督学习,包括修复和判断分类错误的图像。

自2012年AlexNet问世这十年来,机器视觉领域的技术可以说是日新月异。机器视觉在诸多领域也逐渐接近甚至超越了我们人类的眼睛。随着技术的不断进步,机器视觉技术也一定会变得更加的强大,无论是安全防护、自动驾驶、缺陷检测还是目标识别等领域,相信机器视觉会带给我们更多的惊喜。

审核编辑 :李倩

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 机器视觉
    +关注

    关注

    161

    文章

    4323

    浏览量

    120010
  • 卷积神经网络

    关注

    4

    文章

    359

    浏览量

    11831
收藏 人收藏

    评论

    相关推荐

    视觉检测是什么意思?机器视觉检测的适用行业及场景有哪些?

    在快速迭代的工业世界中,机器视觉检测以其精准、高效的力量,已成为众多产业不可或缺的技术支持。本文将深入探讨机器视觉检测的含义、应用行业及具体
    的头像 发表于 08-30 11:20 273次阅读

    什么是机器视觉opencv?它有哪些优势?

    机器视觉(Machine Vision)是一种利用计算机和图像处理技术来模拟人类视觉系统的功能,实现对图像的识别、分析和理解的技术。Open
    的头像 发表于 07-16 10:33 626次阅读

    机器视觉和计算机视觉有什么区别

    机器视觉和计算机视觉是两个密切相关但又有所区别的概念。 一、定义 机器视觉
    的头像 发表于 07-16 10:23 445次阅读

    机器视觉的应用实例解析

    机器视觉是一种利用计算机视觉技术对图像进行处理、分析和理解的技术。它在许多领域都有广泛的应用,包括工业自动化、医疗诊断、交通监控、安全监控等
    的头像 发表于 07-16 10:19 339次阅读

    机器视觉与计算机视觉的区别与联系

    机器视觉与计算机视觉是两个密切相关但又有所区别的领域。 1. 引言 在当今科技迅猛发展的时代,机器人和计算机
    的头像 发表于 07-09 09:27 542次阅读

    计算机视觉机器视觉区别在哪

    计算机视觉机器视觉是两个密切相关但又有明显区别的领域。 一、定义 计算机视觉 计算机视觉是一门
    的头像 发表于 07-09 09:22 385次阅读

    机器视觉控制轴运动原理是什么?

          过去几年里,运动控制系统已经把机器视觉作为其关键部分。越来越多的工程师和科研人员认识到当前的机器视觉技术和运动控制
    的头像 发表于 07-09 08:45 214次阅读

    机器视觉的应用流程是如何实现的

    机器视觉是一种利用计算机和图像处理技术,模拟人类视觉系统对图像进行处理、分析和理解的技术。它在工业自动化、智能交通、医疗诊断、安防监控等领域
    的头像 发表于 07-04 10:47 361次阅读

    机器视觉控制的优缺点有哪些

    机器视觉控制是一种利用计算机视觉技术机器进行控制的方法,它在工业自动化、机器
    的头像 发表于 07-04 10:43 628次阅读

    机器视觉控制轴运动原理是什么

    机器视觉控制轴运动原理是一个复杂而深入的主题。下面将从以下几个方面进行介绍: 机器视觉概述 机器视觉
    的头像 发表于 07-04 10:42 464次阅读

    机器视觉的关键技术有哪些

    机器视觉作为人工智能领域的一个重要分支,通过模拟和模仿人类视觉系统,使计算机能够感知、理解和解释图像和视频数据。随着计算能力的提升和算法的进步,机器
    的头像 发表于 06-06 15:57 631次阅读

    机器视觉中常用的光源 影响机器视觉技术速度的因素

    机器视觉的光源种类繁多,常见的有白光光源、红外光源、紫外光源、激光光源、红绿蓝(RGB)光源等。其中,白光光源是最常见的机器视觉光源之一,它能够产生类似自然光的光谱,因此在很多应用中都
    的头像 发表于 02-27 18:18 1821次阅读
    <b class='flag-5'>机器</b><b class='flag-5'>视觉</b>中常用的光源 影响<b class='flag-5'>机器</b><b class='flag-5'>视觉</b><b class='flag-5'>技术</b>速度的因素

    机器视觉软件有哪些 机器视觉软件的优点

    机器视觉软件是一种利用计算机视觉技术来模拟和弥补人眼视觉功能的软件系统。它可以通过对图像和视频进行分析,识别和理解目标物体,以实现自动化和智
    的头像 发表于 02-02 10:53 1428次阅读

    技术科普 | 机器视觉5大关键技术及其常见应用

    学习等多个领域。 随着人工智能和机器学习算法进入了与产业深度融合的阶段,机器视觉技术已广泛应用于人脸识别、自动驾驶、无人机、医学影像分析、工业生产等场景,主要运用到以下六大
    的头像 发表于 01-31 16:38 2185次阅读
    <b class='flag-5'>技术</b>科普 | <b class='flag-5'>机器</b><b class='flag-5'>视觉</b>5大关键<b class='flag-5'>技术</b>及其常见应用

    机器视觉照明技术基础知识概述

    机器视觉(machine vision)照明技术主要任务为提升被测物体特征与背景之间的对比度。
    的头像 发表于 12-18 17:36 1157次阅读
    <b class='flag-5'>机器</b><b class='flag-5'>视觉</b>照明<b class='flag-5'>技术</b>基础知识概述