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

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

3天内不再提示

计算机视觉中的专业术语你知道哪些?

新机器视觉 来源:CV技术指南 作者:仿佛若有光 2021-06-26 11:22 次阅读

前言:

计算机视觉中存在很多的专业术语,如先验知识,语义信息,embedding,head,neck等。这些术语的解释无法直接在网上搜到,也没有在哪一篇论文中定义它们的概念和意义,因此,对于第一次听到这些术语的读者来说会非常的困惑。

此外,对于还没有建立计算机视觉知识体系的读者来说,也很难理解特征空间,fine-tuning、预训练、池化等方面的内容。 本文介绍了很多读者在其它地方不可能了解的内容,通过这些内容相信读者能更深层次地理解计算机视觉,建立起基本的计算机视觉知识体系。

backbone、head、neck和fine-tune

以一个图像分类的卷积神经网络为例,网络分成两部分,前部分是由卷积层、归一化层、激活层、池化层堆叠的,输入图像在经过若干层卷积、归一化层、激活层和池化层的堆叠后进入全连接层,经过几次全连接后输出每个类别的概率值。 在这里,前面卷积层、归一化层、激活层和池化层的堆叠部分属于backbone。意思是神经网络的躯干部分,这部分也称为特征提取网络。 后面的全连接层的堆叠属于head。意思是神经网络的头部,实现模型任务的预测,称为predictor head,这部分网络也称为分类网络。

再以目标检测中的YOLO_V4中的图为例。 如上图所示,在backbone后,常构建特征金字塔,在特征金字塔部分做一些处理,如多尺度融合,再将特征金字塔的输出进行预测。因此,特征金字塔这部分放在backbone和head之间,称为neck(脖子),这里的Dense Prediction即为head。 关于backbone即常见的经典网络,如VGG,ResNet,MobileNet,ShuffleNet,DenseNet等,当某个模型提到backbone使用的是VGG,即表示使用的是VGG的backbone部分,而不包括VGG的head。 这里解释一下为何是这样。神经网络有多种解释,其中一种解释如下,神经网络被认为是在提取特征,计算机视觉的传统方法就是人为地设定某些特征,再进行分类。如HOG特征,LBP特征,在提取完特征后,使用分类器对这些特征进行分类,如SVM分类器。 这里的backbone部分则认为是一个特征提取网络,而head部分则被认为是分类网络,因此特征提取的部分可以共享,它们的本质都是在提取图片的特征,而分类网络则对应到具体的任务,如分类猫狗,分类网络需要从提取的特征中分成猫狗两类。 这段话同时也解释了fine-tune的原理,使用一个预训练好的backbone,针对你自己的任务,自己搭建相应的分类网络,在训练时冻结backbone的参数,只训练分类网络的参数。这是因为预训练好的backbone已经具备很好的特征提取能力,因此对于你自己的图像,网络只需要学习如何将提取后的特征按你定义的类别进行分类。

Preprocess和Postprocess

Preprocess为预处理,图像在送入神经网络之前,需要进行一定的处理。 通常的处理是使用opencv中的resize将所有图像缩放到同一尺寸,并根据数据集的标注设置网络的label。此外,如果有必要的话,还会进行数据增强,如调整图像饱和度,镜像,加噪声,随机掩码等方式。 预处理的必要性:大部分神经网络在backbone后将数据进行flatten(即将四维的张量变成二维)的操作,再进行全连接,此时全连接层输入的神经元个数即为flatten后的长度,若输入的图像的尺寸不一样,则全连接层输入的神经元个数无法一致,会报错。此外,对于没有全连接层,其它类似的处理部分(除少数外),也会要求backbone后的输出大小一致。 Postprocess指的是对网络预测的结果进行后处理,对于普通的分类网络不需要后处理,但对于目标检测、语义分割这样的任务,需要对网络的输出进行处理,将预测的结果通过图像进行可视化。 例如目标检测中的YOLO,其输出一个7x7x30的张量,输出98个预测框,但实际一张图片没这么的目标,则需要进行NMS这样的处理来去除一些不合理的预测框,且我们无法直接看待这些预测框是否准确,就需要将其在原图像上显示出来,以直观感受预测的效果如何。

先验知识

在《论文创新的常见思路总结》中我提到,关于特定的类的检测,我们可以针对这个类别添加很多先验知识,在《数据增强方法总结》中我提到,数据增强的本质是人为地引入人视觉上的先验知识。在《CNN可视化技术总结(一)特征图可视化》中我提到,所谓改进网络都是人的主观改进,这里人的主观即先验知识。 这里的先验知识指的是人对于如何识别一张图像或如何识别一个类而关注的内容,引入先验知识是指设计一些东西让网络也关注这些内容。 例如特征金字塔中的多尺度融合,人认为大目标应该在低分辨率检测、小目标在高分辨率检测,由此网络在特征金字塔的不同层预测不同大小的目标。人又认为如果大目标在低分辨率检测,小目标在高分辨率检测,则在低分辨率时,小目标还存在,在这里被当成了背景,同理在高分辨率时大目标被当成了背景,这样不合理,又提出了ASFF处理方式,提升了5-10个百分点。

例如人在关注一个事物时,会自动忽略眼睛看到的其它东西,由此提出了注意力机制。 例如即便只有上半身,人还是能认出自己熟悉的人,由此提出随机遮挡等数据增强方式,让网络在有遮挡的情况下也能正确识别。 例如人是如何识别打篮球这一行为的,人根据篮球、投篮手势、身体跳跃、篮球运动等一系列的组合识别,因此如何让网络更好地关注这些特征提出了Non-Local。

embedding

在transformer中出现了embedding,在自编码器中也出现了embedding,还有很多地方也有提到,如何理解embedding? 这里涉及到神经网络的另一种解释。神经网络被认为是将图像从高维的像素空间映射到低维的嵌入空间,即embedding,也可称为特征空间。这里的特征空间用embedding(向量的形式)来表示。 在编码器中,网络将图像映射成embedding,即高维图像通过非线性函数的多次映射,可以用低维embedding来表示,在解码器中,网络将低维embedding映射回图像。 因此,embedding可以认为是某些特征的浓缩表示形式。 以行人重识别为例,论文认为即便是在不同拍摄角度下,只要是同一个人,神经网络输出的embedding在某种距离度量方式下就是相近的,而不同的人在某种距离方式下就是很远的,因此可以通过某种距离度量方式判断两个embedding的距离是否在阈值范围内来判断是否为同一个人。

feature map

字面意思:特征图。 根据前面的解释,神经网络是在将图像从高维像素空间映射到低维的特征空间,这个映射是通过一层一层卷积和激活来进行的,卷积具备提取特征的能力。 例如在数字图像处理中,我们是通过sobel算子来检测轮廓,而sobel算子可以认为是3x3的卷积的其中一种情况,在这种情况下,它就可以提取图像的轮廓,那在其它情况下就可以提取其它的特征,因此卷积的过程就是在提取特征的过程,经过卷积提取特征和激活函数的映射后的输出称为feature maps。

池化

接着上面的解释来介绍一下池化。 在一张图像中存在很多噪声和冗余信息,噪声是由相机拍摄过程中由于传感器电路、材料等硬件因素或传输过程中产生的,冗余信息是指跟具体任务无关的内容。 当我们以整张图像输入时,需要将这些噪声、冗余信息去除。我们认为这些冗余信息和噪声不是特征,在神经网络中的卷积和映射过程中,会产生比较低的响应值,因此我们可以通过最大池化选择最大的响应值进入下一层,因为我们认为只有特征才会在卷积过程中产生大的特征值,也称为响应值。 同样以sobel为例,当对一个像素值基本相同的背景进行卷积时,卷积的输出几乎为0,而对一个轮廓边缘进行sobel卷积,则会输出较大的值。 因此神经网络通过多次最大池化,去除了噪声和冗余信息。这也就是为什么神经网络的backbone部分基本全是最大池化,而不是平均池化,因为平均池化会将这些冗余信息和噪声继续传到下一层。 关于池化更详细的技术总结,请阅读《池化技术总结》文章。

语义信息

数字图像是由像素值组成的,它们本是一堆数字的组合,但就是这样的组合形成了一幅幅图像,如猫、狗、篮球、米老鼠、眼睛、鼻子等。因此,语义信息指的是图像的内容,即鼻子,眼睛这样的图像。

总结

本文介绍了很多读者在其它地方不可能了解的内容,通过这些内容相信读者能更深层次地理解计算机视觉,建立起基本的计算机视觉知识体系。

责任编辑:lq6

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

    关注

    42

    文章

    4572

    浏览量

    98748
  • 计算机视觉
    +关注

    关注

    8

    文章

    1600

    浏览量

    45616
收藏 人收藏

    评论

    相关推荐

    机器视觉、工业视觉计算机视觉这三者的关系

    机器视觉、工业视觉计算机视觉这三者的关系
    的头像 发表于 01-24 10:51 570次阅读
    机器<b class='flag-5'>视觉</b>、工业<b class='flag-5'>视觉</b>和<b class='flag-5'>计算机</b><b class='flag-5'>视觉</b>这三者的关系

    SMT贴片加工常见的专业术语分享

    一站式PCBA智造厂家今天为大家讲讲SMT贴片加工有哪些常用的专业术语?SMT贴片加工常见的专业术语。SMT是表面组装技术(表面贴装技术),是目前电子组装行业里流行的一种技术和工艺,具有组装密度
    的头像 发表于 01-09 09:08 276次阅读

    SSD入门必看|这些专业术语知道多少?

    SSD领域涉及到较多的专业术语,为了更深入地了解SSD技术,本文对常用SSD术语进行简要的说明和介绍。Namespace命名空间,是NVMe协议中一个基本的逻辑空间的概念。简单地说,命名空间
    的头像 发表于 12-16 08:34 374次阅读
    SSD入门必看|这些<b class='flag-5'>专业术语</b>你<b class='flag-5'>知道</b>多少?

    什么是计算机视觉计算机视觉的三种方法

    计算机视觉是指通过为计算机赋予人类视觉这一技术目标,从而赋能装配线检查到驾驶辅助和机器人等应用。计算机缺乏像人类一样凭直觉产生
    的头像 发表于 11-16 16:38 3127次阅读
    什么是<b class='flag-5'>计算机</b><b class='flag-5'>视觉</b>?<b class='flag-5'>计算机</b><b class='flag-5'>视觉</b>的三种方法

    最适合AI应用的计算机视觉类型是什么?

    计算机视觉是指为计算机赋予人类视觉这一技术目标,从而赋能装配线检查到驾驶辅助和机器人等应用。计算机缺乏像人类一样凭直觉产生
    的头像 发表于 11-15 16:38 236次阅读
    最适合AI应用的<b class='flag-5'>计算机</b><b class='flag-5'>视觉</b>类型是什么?

    STM32F10x中一些专业术语解释

    STM32F10x中一些专业术语解释
    的头像 发表于 11-01 16:59 268次阅读

    计算机视觉前景光明

    电子发烧友网站提供《计算机视觉前景光明.pdf》资料免费下载
    发表于 09-18 10:16 0次下载
    <b class='flag-5'>计算机</b><b class='flag-5'>视觉</b>前景光明

    电工行业的专业术语总结

    做电工的师傅都知道,电工的理论知识非常重要,理论知识可以在一定程度上指导实践经验,是电工发展的基础。当然了,做电工掌握一些电工行业的专业术语也是非常重要的!要不然和专业人员交流的时候不免会很尴尬!下面我们就来看看有哪些必须
    的头像 发表于 09-11 11:11 591次阅读

    人工智能计算机视觉方向是什么

    人工智能计算机视觉方向是什么 人工智能计算机视觉方向是指利用人工智能技术对图像和视频进行各种分析、解释和操作的过程。计算机
    的头像 发表于 08-15 16:06 1193次阅读

    一文秒懂工商业储能专业术语!

    一文秒懂工商业储能专业术语!古瑞瓦特逆变器厂家 随着可再生能源的快速发展,储能技术在平衡能源供应与需求方面扮演着关键角色,储能产业高速增长。而许多客户依旧对储能的相关专业术语存在许多
    的头像 发表于 08-15 10:34 3174次阅读
    一文秒懂工商业储能<b class='flag-5'>专业术语</b>!

    机器视觉计算机视觉的区别

    机器视觉计算机视觉的区别 机器视觉计算机视觉是两个相关但不同的概念。虽然许多人使用这两个
    的头像 发表于 08-09 16:51 1136次阅读

    计算机视觉是什么 计算机视觉历史及发展趋势

    正像其它学科一样,一个大量人员研究了多年的学科,却很难给出一个严格的定义,模式识别如此,目前火热的人工智能如此,计算机视觉亦如此。与计算机视觉密切相关的概念有
    发表于 07-20 15:41 0次下载

    PCB组成结构和专业术语

    今天给大家分享的是 PCB、PCB组成成分、PCB专业术语
    的头像 发表于 07-11 15:44 673次阅读

    什么是机器视觉?机器视觉计算机有什么关系?

    机器视觉计算机视觉有什么区别
    的头像 发表于 06-05 09:28 863次阅读
    什么是机器<b class='flag-5'>视觉</b>?机器<b class='flag-5'>视觉</b>与<b class='flag-5'>计算机</b>有什么关系?

    计算机视觉相关概念总结

    为了帮助同事和客户了解更多有关计算机视觉和AI的更多信息,我们言简意赅介绍一些计算机视觉和AI术语,希望能帮助到大家。
    的头像 发表于 05-31 10:11 518次阅读