用于物体识别和跟踪的下游任务自监督学习-2-背景

本文介绍了计算机视觉的基础概念,包括图像采集、数据增强、概率表示、特征提取和聚类。图像采集涉及相机将光线转化为数字图像的过程,数据增强通过各种技术增加数据集的多样性,而概率表示则使用概率分布来理解和表示图像信息。特征提取是识别图像中关键线索的过程,而聚类则用于识别数据中的模式和关系。这些概念在深度学习和计算机视觉任务中,如物体识别和跟踪中起着关键作用。
摘要由CSDN通过智能技术生成
2.1用于现实世界应用的计算机视觉的基本概念

有许多中间步骤涉及应用计算机视觉算法来解决现实世界中的问题。机器视觉算法从光学传感器的图像采集开始,并最终解决现实世界的决策任务,如自动驾驶汽车、机器人自动化和监控。设计现代计算机视觉算法包括传感器数据编码、解码、数据扩充和预处理、数据分解为训练/val/测试、特征提取、机器学习或深度学习算法设计,然后直观地利用模型特征预测任务解决方案或组合多个任务解决方案以提供最终结果。

2.1.1图像采集

图像采集是指捕捉视觉数据的过程,相机、扫描仪甚至智能手机使用成像系统捕捉光线并将其转换为数字图像。这个过程包括几个步骤:i)光线通过镜头进入相机(照明和反射)。透镜将光聚焦到图像传感器上,图像传感器是一种光敏电子元件。ii)图像传感器由数百万个微小的光敏细胞或像素组成,这些细胞或像素将入射光转换为电信号(采样)。iii)然后,摄像机的电子设备对电信号进行处理,并将其转换为数字图像文件(量化),该文件可以存储为单个通道(灰度)或多个颜色通道(例如,红色、绿色和蓝色通道,也称为RGB)[29]。图像的质量取决于各种因素,包括图像传感器的分辨率、镜头的孔径15和相机的曝光设置。

2.1.2图像数据增强

图2.1:用于计算机视觉应用的机器学习中使用的不同图像增强技术。

图像数据扩充是通过生成现有图像的修改版本来手动或自动[30]增加数据集大小的过程。数据扩充在训练机器学习模型时很有用,因为它可以防止过拟合并提高模型的泛化能力。图像旋转通过以不同角度旋转来增强图像,使得模型可以学习识别不同方向的对象。在翻转过程中,图像会转换为水平或垂直,因此模型会学习识别彼此镜像的对象。图像裁剪技术去除图像的一部分,以便模型学习关注图像的最重要特征。在图像中添加噪声是了解图像变化的常用方法,例如照明或背景杂波的变化。颜色抖动方法调整图像的颜色或对比度(图2.1),使模型了解不同的照明条件

图2.2:来自本论文中使用的数据集的样本帧:(a)CLAS1,(b)CLAS2,(c)MOTSChallenge,(d)AppleA,(e)Pear,(f)CRAID,(g)Peach,(h)AppleB

在运动模糊增强技术中,我们对图像应用滤波器或模糊效果,以包括不同的场景条件,例如当图像由于快速运动而模糊或失真时。生成模型可以生成与数据集中现有图像相似的新图像,从而使模型能够推广到新数据。图2.1显示了用于概括模型的一些最流行的图像数据增强技术

2.1.3视觉数据的概率表示

数据分布分析(见图2.2)是一种有用的技术,可以理解数据的基本结构,即在训练、验证和测试集的样本之间有多大的可变性。视觉数据的概率表示通常使用概率分布来表示图像信息,而不是固定值。这在诸如图像分类、对象检测和分割之类的任务中是有用的,其中图像中经常存在不确定性或模糊性。高斯混合模型(GMM)是一种流行的视觉数据概率表示方法。GMM是一种概率模型,可用于表示数据集的概率分布。每个GMM由一组单变量或多变量高斯分布组成,每个高斯分布由其均值向量vxµk和协方差矩阵定义,可以定义如下

其中,式2.3表示针对k个类训练的基于CNN-的分类模型的学习表示h(·)的GMM,vk是属于k类的样本数量,N是所有类的样本数目,并且xi表示输入图像。这些分布的参数可以使用期望最大化(EM)[31]算法从数据中学习,或者从深度分类器模型[32]中数据的卷积特征表示中学习。这在诸如对象识别之类的任务中是有用的,其中GMM可以用于表示不同对象类别的概率分布。例如,当我们使用CLAS1数据集(图2.2中的(a))或多物种花朵数据集(2.2)中的(d)和(h)训练分类模型时,我们观察到多个高斯分布的混合物表示训练期间感兴趣的类别。图2.3-(a-b)显示了两种高斯混合在训练、验证和开放或测试集之间的比较,其中WideResNet-42模型针对两个类别进行了训练(图2.3中的AppleA和AppleB)。图 2.3-(c-d)2.3-(c-d) 还显示了训练和验证/开放分布对比,其中模型是针对 CLASP1 中的两个类别(9 号摄像机和 11 号摄像机图像,也称为 CL1)进行训练的

图 2.3 显示了训练数据分布与验证数据分布的差异。与验证数据的差异。因此,学习到的概率表征可以识别出测试数据中的离群值。测试数据中的异常值。

另一种概率表示基于变分自动编码器(VAE)[33],这是一种可用于学习数据概率表示的生成模型。VAE由将输入数据映射到潜在空间的编码器网络和将潜在空间映射回输入数据的解码器网络组成。编码器网络被训练来学习数据的概率表示,解码器网络可以用于根据所学习的数据生成新的样本分布高斯分布在机器学习和计算机视觉中的常见应用包括:

i)密度估计,其中高斯分布可用于估计数据集的概率密度函数(图2.3),这有助于理解数据的底层结构;

ii)异常检测,其中高斯分布可用于识别数据集中的异常值或异常值(图2.3),通过将数据与基于平均值和标准差的预期分布进行比较;

iii)特征缩放,其中高斯分布可以用于缩放和归一化数据集中的特征,这可以提高机器学习算法的性能。

2.1.4特征提取

特征提取是从数据集中识别和提取重要线索或特征的过程,这些线索或特征可用于以更紧凑、更有意义的方式表示数据。在计算机视觉中,特征提取通常用于从图像或视频中提取相关特征,用于分析、分类或其他任务。有许多不同的特征提取技术,包括i)边缘检测,其涉及识别图像中对象的边缘或边界;ii)基于诸如Gabor滤波器的图像滤波器的特征提取提取诸如纹理或形状的特征;iii)使用深度学习模型的自动特征提取,例如卷积神经网络(CNNs)(图2.4)或递归神经网络(RNN)。

2.1.5聚类

机器学习中的聚类方法根据每个聚类中数据点的相似性,将数据集划分为不同的组或簇。根据每个聚类中数据点的相似性将数据集划分为不同的组或聚类。聚类的目的聚类的目的是识别数据中的模式或关系,并将相似的数据点归类在一起。已经开发了许多流行的无监督聚类技术来根据数据点的相似性对其进行分组。

在k-均值[34]聚类中,通过迭代地将每个数据点重新分配给具有最近均值的聚类,将数据点划分为预定义数量的聚类,直到收敛。与k-均值不同,受约束的k-均值基于数据域知识的最近均值和连通图迭代更新分配。

分层聚类使用嵌套方法在一个或多个较大的聚类中形成聚类。分层聚类策略主要有两种类型:聚集型,从单个数据点开始,将聚类合并在一起;分裂型,从一个聚类中的所有数据开始,将其拆分为更小的聚类。基于密度的聚类使用数据点的密度,而不是它们与中心点的距离,它们通常用于识别具有任意形状的聚类,并且对噪声和异常值具有鲁棒性。在谱聚类技术中,利用数据相似度矩阵的特征向量来识别数据中不可线性分离的聚类,可以有效地处理大型数据集。聚类技术通常用于计算机视觉中的任务,如图像分割、异常检测和数据可视化。例如,图2.4显示了使用UMAP[35]的深度模型中512D特征的2D可视化。

图2.4:使用统一流形近似和投影(UMAP)对来自分类模型(WRN-42)的嵌入进行可视化。

2.1.6多视图几何

多视图几何是研究从不同视点拍摄的同一场景或对象的多个图像之间的数学关系。它是计算机视觉中的一个基本主题,具有许多实际应用,如运动结构、三维重建[36,37]和对象识别。Epipolar几何(图2.5)确定了同一场景的多个图像中对应点之间的几何关系,这些图像由具有重叠视场的相机拍摄。它的特点是核极约束,即一个点在相机图像平面上的投影必须位于一条称为核极线的线上(图2.5中的I′)。基于核极几何,我们可以导出投影到两个相机平面上的点之间的以下关系

其中,X、Y、Z是3D世界空间坐标,X、Y是2D图像平面坐标,P是相机透视投影矩阵,该矩阵分别由相机本质、旋转和平移矩阵K、R和T组成。相机本质矩阵由以像素为单位的焦距fx、fy、相机光学中心的像素坐标px、py和偏斜系数α组成。

旋转矩阵R由九个参数(3×3矩阵)组成,平移向量T由三个参数tx、ty、tz组成。

因此,R和T矩阵决定了世界坐标和图像坐标之间的投影变换。三角测量或立体匹配技术利用相机校准来估计场景的3D结构(图2.5)。

这里,使用变换矩阵(等式2.5)将来自多个2D图像的同一对象投影到全局图上以确定3D结构。

 来自移动相机的2D图像序列用于使用多视图几何来估计3D结构和运动。相机校准是使用多视图几何的先决条件,其中相机的内在和外在参数(等式2.5),如焦距、主点和相机姿态,将图像与公共坐标系相关联。多视图几何在计算机视觉的许多实际应用中发挥着关键作用,如增强现实、机器人和自动驾驶汽车。

图2.5:投影变换[2]:(a)两个图像平面之间,(b)世界和相机坐标系之间。

2.2计算机视觉应用中的下游任务

计算机视觉中的下游任务是指对视觉数据进行初始处理和特征提取后对特定问题的解决方案。

这些解决方案可能直接涉及特定任务,也可能涉及对数据的进一步分析或解释。如图2.6所示,计算机视觉应用中常见的下游任务是在图像或视频帧内定位[38,39]和分类特定对象[40]的对象识别技术预测图像或视频帧序列内特定对象的运动的对象跟踪方法[12,41,23];图像分割方法[15,9],基于图像中像素的特性将图像分割成不同的区域或片段;基于图像内的对象和上下文将图像对象转换为单词的图像字幕方法[42];

深度估计方法[10,43,44],用于理解和重建用于跟踪、导航和增强现实应用的场景;

姿态估计技术[45],用于定位场景中的关键点以进行人机交互和人类活动识别,或在多视图6D姿态中,用于恢复严重遮挡和杂乱场景下的物体形状[46];

光学字符识别[47]和场景文本检测[48]识别图像或视频中的字符。

在这些下游任务算法中,核心组件是使用一些流行的CNN骨干架构[49,50,51,52]或视觉转换器[52,53]从输入视觉数据中有效地提取特征。提取特征后,特定任务的目标是设计一个头部架构,以反向传播根据损失函数计算的任务损失。根据任务类型,这些头可以是单阶段[54]或多阶段[1],也可以具有专门的架构[52]来解决任务,而无需大量的预处理和后处理步骤

图2.6:计算机视觉应用程序中的下游任务。

图2.7:理解CNN中的离散卷积和池化操作[55]。(a) 离散卷积,(b)池化,(C)扩张卷积,(d)转置卷积

2.3卷积神经网络

卷积神经网络(CNN)是一种专门为处理具有网格状拓扑结构的数据(如图像)而设计的人工神经网络。

它由多层相互连接的神经元组成,并使用反向传播算法的变体进行训练。细胞神经网络的关键特征之一是使用卷积层,卷积层被设计用于从输入数据中自动自适应地学习特征的空间层次。,这些层对输入数据应用卷积运算,这涉及在输入上滑动小内核或滤波器,并计算内核的条目和每个位置的输入之间的点积

图2.7(a)显示了一个3×3滤波器与大小为5的输入数据矩阵卷积,得到步长为1×1的大小为3×3的特征图。然后,使用非线性激活函数(例如校正线性单元(ReLU)函数)来变换得到的特征图,以应用于不同的下游任务预测。细胞神经网络的另一个关键特征是使用池化层,用于对输入数据的空间维度进行下采样。这有助于降低网络的计算复杂性,以及模型对训练数据的过拟合。

图2.7(b)显示了对步长为1×1的5×5输入特征图的3×3平均池化操作,该操作将输入特征图下采样到3×3。池化操作计算输入特征图中的子区域的平均值或最大值。深度学习中的其他卷积操作是:i)扩张卷积(图2.7(c)),以增加感受野,而不增加可学习权重的数量

ii)转置卷积(图2.7(d)),使用可学习参数而不是使用典型的插值技术对卷积特征进行上采样。

2.3.1卷积神经网络架构

LeNet: 这是 Yann LeCun 等人在 20 世纪 80 年代末和 90 年代初开发的早期 CNN 架构。[56] 于 20 世纪 80 年代末和 90 年代初开发。它最初是为手写数字识别,包括一系列卷积层和池化层,然后是全连接层。全连接层。图 2.8 (a) 显示了 LeNet-5 [56],其中输入为32 × 32 手写图像,输出是一个包含 10 个单元或 10 个数字类别的全连接层。该网络使用基于梯度的学习从手写文本中提取2D形状特征。

图2.8:CNN架构

AlexNet:为了应对高分辨率输入图像的挑战,并为计算机视觉下游任务提取更多基于上下文的CNN特征,Alex Krizhevsky等人[50]开发了一种现代CNN架构,该架构在2012年赢得了ImageNet大规模视觉识别挑战赛(ILSVRC)。这是第一个成功的深度神经网络,它使用最大池来对特征进行下采样,并将ReLU激活作为非线性。它还探讨了数据扩充在神经网络训练中对计算机视觉问题的重要性,以及额外正则化的退出方法。该网络包括输入大小为224×224×3的8个可训练层的两个并行分支和1000个输出类别的三个完全连接层,然后是一系列卷积和最大池化层,如图2.8(c)所示。AlexNet已被广泛用作计算机视觉应用中大多数下游任务的稳健CNN架构。

VGG:2014年,牛津大学视觉几何小组(VGG)推出了一个成功的深度ImageNet分类模型,称为VGG网络[51]。该网络的主要特征是大卷积的分解,对于非常深的模型(16到19层),只允许使用3×3卷积,而不是7×7或5×5滤波器。这种方法有助于设计具有较少权重的非常深入的网络。

Inception和GoogleNet:这是谷歌于2014年推出的CNN架构[57]。它由一系列称为Inception模块的模块组成,这些模块使用1×1、3×3和5×5卷积滤波器的组合来捕获输入数据的不同规模和方面。图2.8(d)显示了一种Inception模块架构,其中使用1×1卷积来降低数据维度,而不影响训练。即使1×1卷积不会从相邻像素中收集任何新的特征,但在不进行计算昂贵的变换的情况下改变特征向量的维数也是有用的

ResNet:为了解决顶层饱和后深度神经网络中的误差传播问题,何开明等人[49]于2015年开发了残差网络(ResNet)架构。该架构在ImageNet分类和对象检测(使用Faster RCNN[1]检测架构)任务中均获得了ILSVRC 2015。图2.9所示的基本残差单元通过一个层为输入x计算函数F(x),然后残差单元的输出变为y=F(x)+x,然后用作下一个单元的输入。这种方法提供了一种在F(x)周围流动梯度的直接方式,而没有用于深度架构的消失梯度。ResNet的第一个版本包含152层,这些层通常用作特征提取主干。其他变体,如ResNet-101和ResNet-50,也适用于解决计算机视觉任务。

 图2.9:Resnet和ViT架构。

Mobile-Net、Efficient-Net 和 Squeeze-Net: 为了克服边缘设备中大型 Inception ResNet 系列在内存和运行时间上的限制和运行时间的限制,人们提出了许多性能卓越的轻量级网络。提出了许多性能卓越的轻量级网络。在SqueezeNet[58]架构中,基于 1 × 1 卷积的 Fire 模块取代了 Inception 单元。Inception 单元,以减少通道数量,然后再扩展生成连接输出。深度可分离卷积[59]的思想是存储高效的MobileNet网络家族的关键组成部分。为了自动化设计构建块(卷积层、最大池化层)和任务特定损失函数(分类、检测和分割)的典型深度学习问题,神经架构搜索技术推动了EfficientNet[60]的开发,该技术成功地解决了深度学习算法的性能/效率权衡问题

视觉转换器(Vision Transformer:):转换器网络最初是为自然语言处理任务开发的,用于捕捉自然语言句子中单词序列之间的长期关系。通过结合CNN功能的优点[38]或不利用CNN[52,53],它也在计算机视觉任务中进行了探索。这些模型首先将输入图像编码为特征表示(见图2.9),然后由Transformer架构进行处理。在编码步骤中,将图像划分为不重叠的补丁网格,每个补丁通过CNN生成特征图。然后,来自所有面片的特征图被组合并展平为特征向量,该特征向量是Transformer的输入。然后,特征向量通过几个自注意层,使模型能够学习图像不同部分之间的关系。注意力机制允许模型关注图像的重要区域,并根据需要动态调整其焦点。最后,转换器的输出
转换器的输出被送入下游任务层,由它对图像进行最终预测。对图像进行最终预测。因此,视觉变换器结合了用于特征提取的 CNN的优势结合起来。与传统的基于 CNN 的模型相比,它能更好地处理图像中的空间依赖关系。

2.4计算机视觉中的距离度量

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

V建模忠哥V

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值