相关基础知识可参见以下博文:
https://blog.csdn.net/weixin_73611281/article/details/140867942?spm=1001.2014.3001.5501
一、MVDet
Multiview Detection with Feature Perspective Transformation
会议:ECCV 2020
论文:https://link.springer.com/chapter/10.1007/978-3-030-58571-6_1
代码:https://github.com/hou-yz/MVDet
1. 背景
(1) 单目视角检测
基于锚点的方法的性能可能受到单目视图系统中预定义的锚框的限制,同时,根据预定义的人类3D高度和宽度计算的多视图锚框也可能不准确,故研究者开始从基于锚点方法转向无锚点方法
在行人检测方面,一些研究人员通过头-脚点检测或中心-比例检测来检测行人边界框
【锚框 Anchor Box】
Anchor Box 被放置在图像的每个位置上,通常以特定的步长覆盖整个图像,如果某个 Anchor Box 与某个真实框的重叠程度超过一定阈值,则认为 Anchor Box 与该目标匹配。根据 Anchor Box 的预测和真实框之间的差异,计算损失函数,并通过反向传播优化模型
【锚点 Anchor】
可以理解为 Anchor Box 的中心点,或用来生成 Anchor Box 的基准点。每个 Anchor 点关联一个或多个 Anchor Box,这些 Box 在 Anchor 点的基础上添加不同的大小和宽高比
同时,行人检测中的遮挡处理问题也引起了广泛关注,一些研究员提出基于部分的检测器(由于被遮挡的人只有部分可观察)
(2) 多信息源下的三维物体理解
在三维目标检测中,从RGB图像和LIDAR点云中聚合信息被广泛研究
【LIDAR点云】
LIDAR(Light Detection and Ranging)点云是一种通过激光雷达技术获取的三维空间数据。设备通过发射激光脉冲并接收反射回来的信号,测量出到物体表面的距离,从而生成大量的点,每个点包含了相应的三维坐标信息(通常是x, y, z)
(3) 深度学习中的几何变换
仿射变换和透视变换等几何变换可以模拟计算机视觉中的许多现象,并且可以用一组固定的参数显式计算
【仿射变换】
A. 平移 Translation
将所有点移动一个固定的距离(不改变物体的形状和大小)
B. 旋转 Rotation
围绕原点或指定点旋转一个角度(保持物体的形状和大小,但改变其方向)
C. 缩放 Scaling
改变物体的大小(在所有方向上缩放比例相同 / 在不同方向上有不同的缩放比例)
D. 错切 Shearing
将物体沿某一方向拉伸或压缩(会改变物体的形状,但不会改变面积或体积)
【透视变换】
将图像投影到一个新的视平面,属于非线性变换,可以将一个二维坐标系中的点映射到三维坐标系中的点,或改变图像中的形状
应用场景: 校正图像的透视形变或者改变图像的视角
基本原理: 找到原始图像中四个点,通过透视变换可以将这个四边形转换为目标图像中的一个矩形
2. 现存问题
解决遮挡和拥挤的模糊性是多视图行人检测的主要挑战。在遮挡下,很难确定某个位置是否存在一个人,或者存在多少人以及他们在哪里
3. 创新点
(1)MVDet选择在多个视图中的相应像素处采样的特征向量的无锚点表示。具体而言,通过透视变换投影卷积特征图,并将多个投影的特征图连接起来
(2)对于空间聚合,为了最小化CNN之外的人工设计和操作,代替条件随机场和平均场推断,MVDet 采用完全卷积的解决方案。在聚合的地平面特征图上应用(学习到的)卷积,并且使用大的感受野来联合考虑地平面相邻位置
(3)全卷积MVDet可以以端到端的方式训练
【条件随机场 CRF】
CRF是一种无向图模型,它通过定义节点(表示随机变量)和边(表示随机变量之间的依赖关系)来描述概率分布。具体来说,给定输入序列 X 和输出序列 Y,CRF的目标是通过建模条件概率 P(Y|X) 捕捉输入数据上下文,来找到最优的输出序列 Y
特征函数:捕捉了输入数据 X 和输出标签 Y 之间的关系(CRF模型的核心)
A. 节点特征函数 --> 描述单个标签和输入数据之间的关系
B. 边特征函数 --> 描述相邻标签之间的关系
【平均场推断】
一种用于近似计算概率图模型(如条件随机场CRF)中边缘概率的技术
通过将复杂的联合概率分布分解成多个较为简单的独立分布,从而简化计算过程。同时,通过这种分解,可以将复杂的全局优化问题转化为一系列局部优化问题
4. 模型
MVDet将多个RGB图像作为输入,并输出行人占用地图(POM)估计
A. 给定来自N个摄像机的形状为[3,Hi,Wi]的输入图像,所提出的网络使用CNN来提取每个输入图像的通道特征,CNN特征提取器在此在N个输入之间共享权重
B. 将通道特征映射重新整形为[Hf,Wf]的大小,并通过检测头-脚对来运行单视图检测
C. 对于多视图聚合采用无锚点方法,结合基于相机标定θ(1),…,θ(N)的特征透视变换,产生了形状[C,Hg,Wg]的N个特征图
D. 对于每个地平面位置,我们将其X-Y坐标存储在双通道坐标图中。通过连接N个投影特征图和一个坐标图,聚合了整个场景(形状为[N ×C +2,Hg,Wg])的地平面特征图
E. 在地平面特征图上应用大的核卷积,以便聚合空间邻居信息,用于联合和综合的最终占用决策。
(1) 多视图聚合
特征图提取
在这里,模型选择ResNet-18,因为它具有强大的性能和重量轻
【ResNet-18】
具体构造见下图18-layer所在列
同时,为了保持特征图相对较高的空间分辨率,用扩张卷积替换最后3个步进卷积
【步进卷积】
一种通过在卷积操作中引入步幅来下采样特征图的方法,以减小特征图的尺寸,从而减少计算量和参数量(在标准卷积中,卷积核在输入图像上逐像素移动,每次移动一个像素,步幅为1)
【扩张卷积 / 空洞卷积】
一种在卷积核中引入间隙(扩张率)的卷积操作,能够在不增加参数和计算量的情况下获取更大范围的特征
然后,使用共享权重单视图检测器将行人检测为一对头足点
无锚点表示
通过ROI池化用锚框(图中的绿色框)特征表示地平面位置
【ROI池化】
ROI = Region of Interest
将每个不同大小的候选区域划分为固定数量的子区域,然后对每个子区域进行最大池化或平均池化,从而得到固定大小的输出特征图,以便后续的全连接层处理
由于锚框的尺寸和形状是根据假定的3D人体身高和宽度计算的,因此锚框可能不准确,这可能会限制系统性能
图中,穿白色外套的女士坐着,只占了锚盒的一半。因此,ROI池化将导致在很大程度上描述背景的特征表示,并导致混淆
透视变换
3D位置(x,y,z)和2D图像像素坐标(u,v)之间的转换通过一下式子完成
其中s是实值缩放因子,Pθ是3×4透视变换矩阵。具体来说,A是3 × 3内参数矩阵,[R| t]是3 × 4关节旋转-平移矩阵或外部参数矩阵,其中R指定旋转,t指定平移
为了确定图像像素的精确3D位置,我们考虑公共参考平面:地平面,z = 0
对于地平面上的所有3D位置(x,y,0),逐点变换可以写为
其中 Pθ,0 表示从 Pθ 中删除第三列的 3 × 3 透视变换矩阵
这些采样网格在地平面上生成投影特征图,其中剩余的(视图外)位置用零填充
注意:
模型选择投影特征图(高层语义特征本身可以表示信息,因此较少受到结构突变的影响)
A. 不选择RGB图像投影的原因 --> RGB像素本身包含相对较少的信息,并且许多信息被保留在空间结构中。然而,投影打破了相邻RGB像素之间的空间关系
B. 不选择单视图检测结果后期投影的原因 --> 在该设置中,系统不能访问除单视图检测结果之外的提示。由于在遮挡情况下,单个视图结果可能不准确,因此此设置也会限制整体性能
(2) 空间聚合
遮挡是由一定区域内的人群产生的。为了处理模糊性,人们可以联合考虑特定区域和该区域中的人群,以进行全面的明智决策
以前,采用CRF和平均场推断,但除了CNN之外还需要设计和操作。事实上,最新研究表明,CNN可以模拟CRF的一些行为和特征,并在语义分割方面优于具有大核卷积的CRF。故该模型提出了一个完全卷积的替代方案,在地平面特征图上具有大的内核卷积
(3) 训练和测试
模型将MVDet训练为回归问题,其中回归函数如下所示
还包括来自N个相机输入的边界框回归损失作为另一个监督
5. 实验
(1) 数据集
A. Wildtrack
来自7个摄像机的400个同步帧,覆盖12米乘36米的区域。地平面被量化为480 × 1440网格,其中每个网格单元是2.5厘米的正方形。摄像头以1080 × 1920的分辨率捕获图像,并以每秒2帧(fps)的速度进行注释。平均而言,每帧有20个人,场景中的每个位置由3.74个摄像机覆盖。
B. Wildtrack
16米乘25米,将地平面划分为640 × 1000网格。有6个视场重叠的摄像机,每个摄像机输出1080 × 1920分辨率的图像。平均而言,4.41个摄像头覆盖同一位置。在默认设置下,MultiviewX每帧有40人
(2) 评价指标
使用两个数据集中的前90%帧进行训练,并使用后10%帧进行测试
报告了精确度、召回率、MODA和MODP。其中MODP评估定位精度,而MODA考虑假阳性和假阴性,使用MODA作为主要性能指标,因为它同时考虑了误报和漏报,使用0.5米的阈值来确定真阳性
【精确度】
模型预测为正类的样本中,实际为正类的比例
TP(True Positives,真正例):被正确预测为正类的样本数量
FP(False Positives,假正例):被错误预测为正类的样本数量
【召回率】
在所有实际为正类的样本中,被正确预测为正类的比例
FN(False Negatives,假反例):被错误预测为负类的样本数量
【MODA】(Multiple Object Detection Accuracy)
衡量多目标检测中检测精度的指标,反映了检测框与真实框的一致性
FN(False Negatives,假反例):实际存在但未被检测出的目标数量
FP(False Positives,假正例):不存在但被错误检测出的目标数量
值越接近1,表示模型的多目标检测精度越高
【MODP】(Multiple Object Detection Precision)
衡量多目标检测中检测框与真实框之间评估检测框与真实框之间的重叠程度的指标
TP(True Positives,真正例):被正确检测出的目标数量
IoUi (Intersection over Union):第ii个检测框与真实框的交并比
在两个RTX-2080 Ti GPU上完成所有的实验
(3) State-of-the-Art
MultiviewX数据集具有合成人,而Wildtrack捕获的是真实世界的行人。在真实场景中,人体高度和宽度的变化更大,因为合成人体的大小非常相似。这表明,实际数据集Wildtrack的锚框平均准确度较低。因此,通过要素地图投影进行聚合会对Wildtrack数据集带来较大的改进
作者不主张基于CRF或基于CNN的方法的优越性,只认为提出的基于CNN的方法可以有效地聚合空间邻居信息,以解决拥挤或遮挡的模糊性,而不需要设计或操作除了CNN以外的部分
二、MVDeTr
Multiview Detection with Shadow Transformer (and View-Coherent Data Augmentation)
会议:ACM MM 2021
论文:https://dl.acm.org/doi/abs/10.1145/3474085.3475310
代码:https://github.com/hou-yz/MVDeTr
1. 背景
(1) 多视图检测
为了检测严重遮挡下的行人,许多研究人员选择探索多个摄像机视图。多视图行人检测通常将来自多个校准摄像机的同步帧作为输入。这些摄像机聚焦于同一区域,并具有重叠的视场
相机校准提供2D图像坐标(u,v)和3D世界位置(x,y,z)之间的匹配。我们将3D世界中z = 0的点称为地平面上的点(鸟瞰图)。对于地平面上的每个点,基于三维人体宽度和高度假设,可以通过投影计算其在多个视图中对应的边界框,然后存储
(2) Deformable(可变形的)Transformer
无论特征图的空间大小如何,注意模块只关注一个目标周围的一小部分关键采样点。通过为每个Queries只分配少量固定数量的Keys,可以缓解收敛性和特征空间分辨率的问题
内部求和(对K个采样点进行累加)+ 外部求和(对M个头进行累加)
Deformable DETR: Deformable Transformers for End-to-End Object Detection
时间:2021
论文:https://arxiv.org/abs/2010.04159
代码:https://github.com/fundamentalvision/Deformable-DETR
(3) CornerNet
CornerNet: Detecting Objects as Paired Keypoints
时间:2018
论文:https://arxiv.org/abs/1808.01244
代码:https://github.com/princeton-vl/CornerNet
使用一个卷积神经网络将一个目标边界框检测视为一对关键点,左上角和右下角,消除了设计锚框的需要
2. 现存问题 & 创新点
(1)应用卷积的相同操作(由于其平移不变性的固有特性)可能与不同的位置敏感失真模式相矛盾,从而进一步限制系统性能
–> 阴影Transformer(从特定位置和视图关注多个相机的不同像素)
(2)数据增强很少应用于多视图检测系统,因为增强输入图像必须保持多视图一致性的限制(增强策略大多是随机的)
–> 视图相干数据增强
3. 模型
阴影Transformer
通过联合考虑多个投影特征图来将可变形注意力扩展到多视图检测
其中偏移量ΔPmkc’,使得注意力机制能够自适应地选择不同视角下的重要特征点
蓝色分支: 聚焦于由太阳投射的真实的阴影
黄色分支: 关注人体和特征的各种”阴影状”失真模式,这些失真模式是由不同相机在不同位置处的透视变换引起的(人体被投影到地平面上,就好像相机位置处有光源将阴影投射到地平面上,从而在不同位置处给出不同的失真模式)
损失函数
A. Detection Loss
N:所有位置上的行人总数
B. Offset Loss
由于模型输出的热图与地面实况相比通常具有较低的分辨率,因此模型还回归偏移
C. Bounding Box Regression Loss
该模型不是检测左上角和右下角或对象中心点,而是检测行人的脚点并回归其高度和宽度
脚点或边界框底部的中心,应该是边界框与地平面相交的地方(x= 0),每个图像上的足点应该与地平面上的对应行人占用相同或接近
数据增强
数据扩充有助于防止系统过度拟合
a. 对于每个输入视图,应用随机数据增强,包括水平翻转、裁剪和缩放。同时,记录所应用的随机变换的仿射矩阵
b. 从这些增强图像中提取特征
c. 应用逆仿射变换来创建未增强的特征图(不等于原始图像向前经过的特征图,但是保持了行人位置并且在这些位置周围具有相似的特征分布)
d. 使用与摄像机姿态和标定相同的透视变换,将未增强的图像特征投影到地平面