YOLOPv2论文翻译

YOLOPv2: Better, Faster, Stronger for Panoptic Driving Perception

摘要

  • 在过去的十年中,多任务学习方法在解决全景驾驶感知问题方面取得了令人鼓舞的成果,既提供了高精度又具备高效能的性能。在设计用于实时实际自动驾驶系统的网络时,这已成为一种流行的范式,特别是在计算资源有限的情况下。本文提出了一种有效且高效的多任务学习网络,能够同时执行交通物体检测、可驾驶道路区域分割和车道检测任务。我们的模型在挑战性的BDD100K数据集上,达到了新的最先进(SOTA)性能,既提高了准确性,又加快了速度。特别是在推理时间上,相比于之前的SOTA模型,推理时间减少了一半。代码将在不久的将来发布。

1. 引言

  • 尽管计算机视觉和深度学习取得了巨大进展,基于视觉的任务(如物体检测、图像分割、车道检测等)在低成本自动驾驶应用中仍然具有挑战性。近期,研究者们在构建一个强健的全景驾驶感知系统方面做出了努力,而全景驾驶感知系统是自动驾驶的关键组成部分之一。全景驾驶感知系统通过常见的传感器,如摄像头或激光雷达,帮助自动驾驶车辆全面理解周围环境。基于摄像头的物体检测和图像分割任务,由于其低成本,通常在场景理解的实际应用中更为常见。物体检测在提供交通障碍物的位置和大小信息方面发挥着重要作用,帮助自动驾驶车辆在驾驶过程中做出准确和及时的决策。此外,可驾驶区域分割和车道分割为路径规划提供了丰富的信息,有助于提高行驶安全性。

图1

  • 物体检测和图像分割是计算机视觉领域两个长期研究的课题。针对物体检测,已有一系列优秀的工作,如CenterNet [3]、Faster R-CNN [18] 和 YOLO 系列 [16, 17, 21, 23, 22, 5]。常见的分割网络常用于可驾驶区域分割问题,例如:UNET [10]、SegNet [1] 和 PSPNet [28]。而对于车道检测/分割,通常需要一个更强大的网络来提供更好的高层和低层特征融合,以便考虑全局结构上下文,从而增强分割的细节 [14, 9, 24]。然而,在实际的实时自动驾驶系统中,为每个独立任务运行单独的模型往往是不现实的。多任务学习网络 [19, 15, 25, 20] 为此提供了一个潜在的解决方案,通过设计一个编码器-解码器模式的网络,编码器可以有效地被不同任务共享,从而节省计算成本。
  • -在本文中,我们提出了一种有效且高效的多任务学习网络,在对先前方法进行深入研究后进行设计。我们在具有挑战性的BDD100K数据集 [26] 上进行了实验。我们的模型在三项任务中均取得了最佳表现:物体检测任务的MAP为0.83, 可驾驶区域分割任务的MIOU为0.93,车道检测的准确率为87.3。这些数值相较于基线有了大幅度的提升。此外,我们将每秒帧数(FPS)提高到了91,在NVIDIA TESLA V100上运行,而YOLOP模型在相同实验设置下的FPS为49。这进一步证明了我们的模型能够减少计算成本并保证实时预测,同时为其他实验研究的改进留出了空间。
  • 本工作的主要贡献总结如下:
  • 更好:我们提出了一个更有效的模型结构,并在过程中开发了更复杂的“免费增益”(bag-of-freebies),例如,在数据预处理时进行了Mosaic和Mixup操作,并采用了新颖的混合损失函数。
  • 更快:我们实现了一个更高效的网络结构和内存分配策略,从而提高了模型的运行速度。
  • 更强:我们的模型在强大的网络架构下进行训练,因此它具有良好的泛化能力,可以适应各种场景,并同时保证推理速度。

2. 相关研究

  • 在本节中,我们回顾了全景驾驶感知主题中所有任务的相关工作,并讨论了有效的模型提升技术。

2.1 实时交通目标检测

  • 现代目标检测器可以分为单阶段检测器和双阶段检测器。双阶段检测器由区域提议组件和检测细化组件组成。这些方法通常在不同场景中表现出较高的精度和稳健的结果。单阶段目标检测器通常运行更快,因此在实时实际应用中更为常用。YOLO系列在先进的单阶段目标检测设计方面不断迭代,提供了许多实验灵感,包括YOLOv4、Scaled YOLOv4、YOLOP和YOLOv7等。在本文中,我们使用了简单但强大的网络结构,并结合有效的“免费方法包”(Bag of Freebies, BoF)来提升目标检测性能。

2.2 可行驶域和车道线分割

  • 在语义分割领域,研究通过使用全卷积神经网络(Fully Convolutional Network, FCN)[2],取代了传统的分割算法,取得了显著的进展。随着该领域的深入研究,设计出了更高性能的模型,例如经典的编码器-解码器结构UNet,以及PSPNet中用于提取不同层次特征的金字塔池化模块,这些方法有效地帮助了可驾驶区域的分割。
  • 对于车道分割,由于其特有任务特征的挑战,例如车道形状的细长性和像素分布的零散性,车道分割需要精细的检测能力。SCNN[14]提出了逐层切片卷积(slice-by-slice convolution),用于在每一层的通道间传递信息。Enet-SAD则采用了自注意力校正方法,使得低层特征可以从高层特征中学习,这不仅提高了性能,还保持了模型的轻量化设计。

2.3 多任务方法

  • 多任务学习的目标是设计能够更好地从多任务监督信号中学习共享表示的网络。Mask RCNN继承了Faster RCNN的思想,使用带有残差块的ResNet[8]架构进行特征提取,并增加了一个额外的掩膜预测分支,从而高效地结合了实例分割和物体检测任务。LSNet[4]的作者设计了一种三合一的网络架构,能够同时执行物体检测、实例分割和可驾驶区域分割。他们还设计了一种交叉IOU损失函数,以适应不同尺度和属性的物体。MultiNet使用一个共享编码器和三个独立的解码器,完成场景分类、物体检测和可驾驶区域分割任务。YOLOP构建了一个用于特征提取的编码器,并为处理特定任务设置了三个分支,从而实现多任务处理。在此基础上,HyBridNet的工作进一步增加了Bifpn以提高精度。

2.4 Bag of Freebies (BoF) [一种在训练深度学习模型时提高性能的技术集合]

  • 为了提高物体检测结果的准确性而不增加推理成本,研究人员通常利用训练阶段和测试阶段是分开的这一事实。数据增强通常被应用来增加输入图像的多样性,从而使得所设计的物体检测模型能够更好地在不同领域进行泛化。例如,YOLOP中应用了常规的图像镜像、图像亮度、对比度、色调、饱和度和噪声的调整。这些数据增强方法都是像素级的调整,并且保留了调整区域中所有原始的像素信息。此外,YOLO系列的作者提出了一种方法,可以同时对多张图像执行数据增强。例如,Mosaic增强 [6] 将四张拼接的图像进行增强,从而提高了批量大小并增加了数据的多样性。

图2

3. 方法论

  • 在本节中,我们详细介绍了提出的多任务学习网络架构。我们讨论了如何实现一个高效的前馈网络,以协同完成交通物体检测、可驾驶区域分割和道路车道检测等任务。此外,还介绍了该模型的优化策略。

3.1 框架

  • 我们设计了一种更高效的网络架构,基于现有的一些工作(例如YOLOP、HybridNet等)。我们的模型灵感来自YOLOP和HybridNet的工作,我们保留了核心设计理念,但采用了更强大的骨干网络进行特征提取。此外,与现有的工作不同,我们采用了三个解码器分支来执行特定任务,而不是将可驾驶区域分割和车道检测任务放在同一个分支中。这样设计的主要原因是我们发现交通区域分割和车道检测的任务难度完全不同,这意味着这两个任务对特征层的要求不同,因此最好为它们设计不同的网络结构。第四节中的实验结果表明,重新设计的架构能够有效地提升整体分割性能,同时对计算速度的影响可以忽略不计。图2展示了我们设计理念的整体方法流程图。

3.2 网络结构

  • 所提出的网络架构如图1所示。它由一个共享的编码器用于从输入图像中提取特征,以及三个解码器分支分别用于处理对应的任务。本节将展示模型的网络配置。

3.2.1 共享解码器

  • 与YOLOP使用CSPdarknet作为骨干网络不同,我们采用了E-ELAN的设计,利用组卷积(group convolution)使不同层的权重能够学习更丰富的特征。图2展示了组卷积的配置。
  • 在网络的颈部(neck)部分,来自不同阶段的特征通过拼接(concatenation)进行收集和融合。类似于YOLOP,我们应用了空间金字塔池化(SPP)模块[7]来融合不同尺度的特征,并使用特征金字塔网络(FPN)模块[11]来融合具有不同语义层次的特征。

3.2.2 任务头

  • 如前所述,我们为每个独立任务设计了三个单独的解码器头(decoder heads)。与YOLOv7类似,我们采用了基于锚点的多尺度检测方案。首先,我们使用路径聚合网络(PAN)[12],这是一种自下而上的结构,用于更好地提取定位特征。通过结合来自PAN和FPN的特征,我们能够将这些局部特征与语义信息融合,然后直接在PAN中的多尺度融合特征图上进行检测。每个网格在多尺度特征图中都会分配三个不同纵横比的锚点,检测头将预测位置的偏移量、缩放后的高度和宽度,以及每个类别预测的概率和相应的置信度。
  • 在所提出的方法中,可驾驶区域分割车道分割分别在独立的任务头中进行,并且采用了不同的网络结构。与YOLOP不同,YOLOP是将两个任务的特征来自neck的最后一层,而我们采用了不同语义层次的特征。我们发现,对于可驾驶区域分割任务来说,从更深层次的网络中提取特征并不是必需的。与其他两个任务相比,这些更深层次的特征并不能提高预测性能,反而增加了训练过程中模型收敛的难度。因此,可驾驶区域分割头的分支在FPN模块之前连接。为了弥补这一改变可能带来的损失,额外应用了上采样层,即在解码阶段应用了四次最近邻插值上采样。
  • 对于车道分割,任务分支连接到FPN层的末端,以便从更深层次的特征中提取信息,因为道路线通常较宽且在输入图像中较难检测。此外,在车道检测的解码阶段应用了反卷积(deconvolution),进一步提升了模型的性能。

3.2.3 设计BOF

  • 基于YOLOP的设计,我们保留了检测部分的损失函数设置。( L_{det} ) 是检测损失,它是分类损失、目标损失和边界框损失的加权和,如下所示。
    L d e t = α 1 ∗ L c l a s s + α 2 ∗ L o b j + α 3 ∗ L b o x L_{det} = \alpha_1*L_{class} + \alpha_2 * L_{obj} + \alpha_3 * L_{box} Ldet=α1Lclass+α2Lobj+α3Lbox
  • 此外,Focal loss用于 L c l a s s L_{class} Lclass L o b j L_{obj} Lobj 以解决样本不平衡问题。 L c l a s s L_{class} Lclass用于惩罚分类, L o b j L_{obj} Lobj用于预测置信度。 L b o x L_{box} Lbox反映了预测结果与真实标签之间的重叠率、长宽比和尺度相似度。通过合理设置损失权重,可以有效保证多任务检测的结果。对于可驾驶区域分割,我们使用了交叉熵损失(cross-entropy loss),其目的是最小化网络输出与真实标签之间的分类误差。对于车道分割,我们使用焦点损失而不是交叉熵损失。因为对于像车道检测这样的难分类任务,使用焦点损失可以有效地引导模型关注难分类的样本,从而提高检测准确性。此外,我们在实验中实现了一种混合损失(hybrid loss),由Dice loss 和Focal loss组成。Dice loss能够学习类别分布,缓解类别不平衡问题。焦点损失则可以强迫模型关注分类困难的样本。最终的损失可以按照如下公式进行计算。

L = L D i c e + γ ∗ L F o c a l = C − ∑ c = 0 c − 1 T P p ( c ) T P p ( c ) + α F N p + β F P p ( c ) − γ N ∑ c = 0 c − 1 ∑ n = 1 N g n ( c ) ( 1 − p n ( c ) ) 2 l o g ( p n ( c ) ) L = L_{Dice} + \gamma * L_{Focal} \\ = C - \sum_{c=0}^{c-1} {TP_p(c) \over TP_p(c) + \alpha FN_p + \beta FP_p(c)} - {\gamma \over N} \sum_{c=0}^{c-1} \sum_{n=1}^{N} g_n(c) (1 - p_n(c))^2 log(p_n(c)) L=LDice+γLFocal=Cc=0c1TPp(c)+αFNp+βFPp(c)TPp(c)Nγc=0c1n=1Ngn(c)(1pnc)2log(pn(c))

T P p ( c ) = ∑ n = 1 N p n ( c ) g n ( c ) TP_p(c) = \sum_{n=1}^{N} p_n(c)g_n(c) TPp(c)=n=1Npn(c)gn(c)

F N p ( c ) = ∑ n = 1 N ( 1 − p n ( c ) ) g n ( c ) FN_p(c) = \sum_{n=1}^{N}(1 - p_n(c))g_n(c) FNp(c)=n=1N(1pn(c))gn(c)

F P p ( c ) = ∑ n = 1 N p n ( c ) ( 1 − g n ( c ) ) FP_p(c) = \sum_{n=1}^{N}p_n(c)(1 - g_n(c)) FPp(c)=n=1Npn(c)(1gn(c))

  • 其中, γ \gamma γ 是Focal los和Dice loss之间的权衡系数, C C C是类别的总数,因此在可驾驶区域分割和车道分割中, C C C被设置为 2 2 2,因为这两个任务仅包含两类。 T P p ( c ) T Pp(c) TPp(c) F N p ( c ) F Np(c) FNp(c) F P p ( c ) F Pp(c) FPp(c) 分别表示真实正例、假负例和假正例。
  • 值得一提的是,我们在多任务学习方法中引入了 Mosaic 和 Mixup 数据增强策略 [27],据我们所知,这是首次在这三项任务(物体检测、可驾驶区域分割和车道检测)中显著提高了性能。

4. 实验

  • 本节介绍了我们实验的 数据集设置 和 参数配置。本文中的所有实验都在 TESLA V100 图形卡和 torch 1.10 配置环境下进行。

4.1 数据集

  • 我们使用 BDD100K 作为我们实验研究的基准数据集,这是一个具有挑战性的自动驾驶场景公开数据集。该数据集包含 10 万帧驾驶视角下的图像,广泛用于自动驾驶计算机视觉研究的评估基准。BDD100K 数据集支持 10 个视觉任务。与其他流行的驾驶数据集如 Cityscapes 和 Camvid 相比,BDD100K 在考虑天气条件、场景位置和光照等方面提供了更多样化的数据和场景。与其他研究类似,我们将数据集划分为 7 万张图像的训练集,1 万张图像的验证集和 2 万张图像的测试集。

4.2 训练配置

  • “Cosine Annealing”策略用于在训练过程中调整学习率,其中初始学习率设置为0.01,并在前3个epoch执行warm-restart[13]。此外,动量和权重衰减分别设置为0.937和0.005,总训练epoch数为300。在训练阶段,我们将BDD100k数据集中的图像从1280×720×3调整为640×640×3,而在测试阶段则从1280×720×3调整为640×384×3。

4.3 结果

  • 在本节中,我们对所提出的模型与一系列现有工作进行了定性和定量的比较。
4.3.1 模型参数和推理速度
  • 表1展示了我们模型与两个最先进的多任务模型的比较。结果表明,我们的模型拥有更强大的网络结构和更多的参数,但性能却更快。这得益于我们提出的有效网络设计和精巧的内存分配策略。我们在相同的实验设置和评估指标下进行了所有测试。

表1

4.3.2 交通目标检测结果
  • 与YOLOP相同,mAP50和Recall被用作评估指标。正如表2所示,我们的模型在mAP50上取得了更高的成绩,并且Recall也具有竞争力。
    表2
4.3.3 可行驶域分割结果
  • 表3展示了可行驶区域分割的评估结果,使用MIOU来评估不同模型的分割性能。我们的模型在这一任务中表现最佳,达到了0.93的mIOU。

表3

4.3.4 车道线检测结果
  • BDD100K 数据集中的车道标注是通过两条线来表示的,因此需要进行预处理。首先,我们基于这两条标注线计算车道的中心线,然后为训练生成一个宽度为 8 像素的车道掩膜,而测试集中的车道线保持 2 像素宽度。我们使用像素精度和车道的 IoU 作为评估指标。如表4所示,我们的模型在准确度上达到了最高值。
    表4
4.3.5 讨论与可视化
  • 图3和图4展示了YOLOP、Hybridnet和我们YOLOPv2在BDD100K数据集上的视觉比较。图3显示了白天的结果。左列列出了YOLOP的三个场景,第一场景中存在一些错误的可行驶区域分割和缺失的可行驶区域分割,第二场景中出现了小物体的重复检测框和缺失的可行驶区域分割。第三场景中,发现了车道检测缺失。中列显示了Hybridnet的三个场景,第一场景中车道预测不连续,第二场景中存在小型车辆的重复检测和车道检测缺失,第三场景中出现了一些车辆和车道的错误检测。右列显示了我们YOLOPv2的结果,表明我们的模型在各种场景下提供了更好的性能。
  • 图4显示了夜间的结果。左列提供了YOLOP的场景结果,第一个场景中有错误的检测和缺失的可行驶区域分割,第二个场景中车道检测偏差,第三个场景中缺失了车道检测和可行驶区域分割。中列是Hybridnet的结果,第一个场景中缺少一些车辆的检测和一些错误的检测框,第二个场景中存在一些错误检测和冗余的检测框,第三个场景中缺少了可行驶区域分割和冗余的车辆检测框。右列是我们YOLOPv2的结果,展示了我们的模型成功克服了这些问题,并展示了更好的性能。
4.3.6 消融实验
  • 我们进行了多种改动和改进,并进行了相应的实验。表5展示了我们在实验中所做的部分更改及其对整个网络引入的改进。

5. 讨论

  • 本文提出了一种高效的端到端多任务学习网络,能够同时执行三个驾驶感知任务:物体检测、可行驶区域分割和车道检测。我们的模型在具有挑战性的BDD100k数据集上达到了新的最先进性能,并在速度和准确性方面大大超过了现有模型。

    在这里插入图片描述

参考文献

[1] Vijay Badrinarayanan, Alex Kendall, and Roberto Cipolla. "Segnet: A deep convolutional encoder-decoder architecture for image segmentation." *IEEE Transactions on Pattern Analysis and Machine Intelligence*, 39(12):2481–2495, 2017.[2] Jifeng Dai, Yi Li, Kaiming He, and Jian Sun. "R-fcn: Object detection via region-based fully convolutional networks." *Advances in Neural Information Processing Systems*, 29, 2016.[3] Kaiwen Duan, Song Bai, Lingxi Xie, Honggang Qi, Qingming Huang, and Qi Tian. "Centernet: Keypoint triplets for object detection." In *Proceedings of the IEEE/CVF International Conference on Computer Vision (ICCV)*, October 2019.[4] Kaiwen Duan, Lingxi Xie, Honggang Qi, Song Bai, Qingming Huang, and Qi Tian. "Location-sensitive visual recognition with cross-iou loss." *arXiv preprint arXiv:2104.04899*, 2021.[5] Zheng Ge, Songtao Liu, Feng Wang, Zeming Li, and Jian Sun. "Yolox: Exceeding yolo series in 2021." *arXiv preprint arXiv:2107.08430*, 2021.[6] Wang Hao and Song Zhili. "Improved mosaic: Algorithms for more complex images." *Journal of Physics: Conference Series*, volume 1684, page 012094. IOP Publishing, 2020.[7] Kaiming He, Xiangyu Zhang, Shaoqing Ren, and Jian Sun. "Spatial pyramid pooling in deep convolutional networks for visual recognition." *IEEE Transactions on Pattern Analysis and Machine Intelligence*, 37(9):1904–1916, 2015.[8] Kaiming He, Xiangyu Zhang, Shaoqing Ren, and Jian Sun. "Deep residual learning for image recognition." In *Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition*, pages 770–778, 2016.[9] Yuenan Hou, Zheng Ma, Chunxiao Liu, and Chen Change Loy. "Learning lightweight lane detection cnns by self attention distillation." In *Proceedings of the IEEE/CVF International Conference on Computer Vision*, pages 1013–1021, 2019.[10] Huimin Huang, Lanfen Lin, Ruofeng Tong, Hongjie Hu, Qiaowei Zhang, Yutaro Iwamoto, Xianhua Han, Yen-Wei Chen, and Jian Wu. "Unet 3+: A full-scale connected unet for medical image segmentation." In *ICASSP 2020-2020 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP)*, pages 1055–1059. IEEE, 2020.[11] Tsung-Yi Lin, Piotr Dollár, Ross Girshick, Kaiming He, Bharath Hariharan, and Serge Belongie. "Feature pyramid networks for object detection." In *Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition*, pages 2117–2125, 2017.[12] Shu Liu, Lu Qi, Haifang Qin, Jianping Shi, and Jiaya Jia. "Path aggregation network for instance segmentation." In *Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition*, pages 8759–8768, 2018.[13] Ilya Loshchilov and Frank Hutter. "SGDR: Stochastic gradient descent with warm restarts." *arXiv preprint arXiv:1608.03983*, 2016.[14] Angshuman Parashar, Minsoo Rhu, Anurag Mukkara, Antonio Puglielli, Rangharajan Venkatesan, Brucek Khailany, Joel Emer, Stephen W Keckler, and William J Dally. "SCNN: An accelerator for compressed-sparse convolutional neural networks." *ACM SIGARCH Computer Architecture News*, 45(2):27–40, 2017.[15] Yeqiang Qian, John M Dolan, and Ming Yang. "DLT-Net: Joint detection of drivable areas, lane lines, and traffic objects." *IEEE Transactions on Intelligent Transportation Systems*, 21(11):4670–4679, 2019.[16] Joseph Redmon and Ali Farhadi. "YOLO9000: Better, faster, stronger." In *Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition*, pages 7263–7271, 2017.[17] Joseph Redmon and Ali Farhadi. "YOLOv3: An incremental improvement." *arXiv preprint arXiv:1804.02767*, 2018.[18] Shaoqing Ren, Kaiming He, Ross Girshick, and Jian Sun. "Faster R-CNN: Towards real-time object detection with region proposal networks." *Advances in Neural Information Processing Systems*, 28, 2015.[19] Marvin Teichmann, Michael Weber, Marius Zoellner, Roberto Cipolla, and Raquel Urtasun. "Multinet: Real-time joint semantic reasoning for autonomous driving." In *2018 IEEE Intelligent Vehicles Symposium (IV)*, pages 1013–1020. IEEE, 2018.[20] Dat Vu, Bao Ngo, and Hung Phan. "Hybridnets: End-to-end perception network." *arXiv preprint arXiv:2203.09035*, 2022.[21] Chien-Yao Wang, Alexey Bochkovskiy, and Hong-Yuan Mark Liao. "Scaled-YOLOv4: Scaling cross-stage partial network." In *Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition*, pages 13029–13038, 2021.[22] Chien-Yao Wang, Alexey Bochkovskiy, and Hong-Yuan Mark Liao. "YOLOv7: Trainable bag-of-freebies sets new state-of-the-art for real-time object detectors." *arXiv preprint arXiv:2207.02696*, 2022.[23] Chien-Yao Wang, I-Hau Yeh, and Hong-Yuan Mark Liao. "You only learn one representation: Unified network for multiple tasks." *arXiv preprint arXiv:2105.04206*, 2021.[24] Ze Wang, Weiqiang Ren, and Qiang Qiu. "Lanenet: Real-time lane detection networks for autonomous driving." *arXiv preprint arXiv:1807.01726*, 2018.[25] Dong Wu, Manwen Liao, Weitian Zhang, and Xinggang Wang. "YOLOP: You only look once for panoptic driving perception." *arXiv preprint arXiv:2108.11250*, 2021.[26] Fisher Yu, Wenqi Xian, Yingying Chen, Fangchen Liu, Mike Liao, Vashisht Madhavan, and Trevor Darrell. "BDD100K: A diverse driving video database with scalable annotation tooling." *arXiv preprint arXiv:1805.04687*, 2(5):6, 2018.[27] Hongyi Zhang, Moustapha Cisse, Yann N Dauphin, and David Lopez-Paz. "Mixup: Beyond empirical risk minimization." *arXiv preprint arXiv:1710.09412*, 2017.[28] Hengshuang Zhao, Jianping Shi, Xiaojuan Qi, Xiaogang Wang, and Jiaya Jia. "Pyramid scene parsing network." In *Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition*, pages 2881–2890, 2017.[29] Wentao Zhu, Yufang Huang, Liang Zeng, Xuming Chen, Yong Liu, Zhen Qian, Nan Du, Wei Fan, and Xiaohui Xie. "Anatomynet: Deep learning for fast and fully automated whole-volume segmentation of head and neck anatomy." *Medical Physics*, 46(2):576–589, 2019.

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【C/C++】memcpy函数的使用

零.导言 当我们学习了strcpy和strncpy函数后,也许会疑惑整形数组要如何拷贝,而今天我将讲解的memcpy函数便可以拷贝整形数组。 一.memcpy函数的使用 memcpy函数是一种C语言内存函数,可以按字节拷贝任意类型的数组,比如整形数组。 …

Matlab轻松烟雾检测

小编经验分享:如何使用Matlab进行烟雾检测 烟雾检测是一项重要的安全技术,它可以帮助我们及时发现火灾风险并采取相应的措施。在这篇文章中,小编将和大家分享如何使用Matlab进行烟雾检测的经验。希望这些经验对大家在实际应用中能够有所帮助…

【Linux系统编程】基础IO--内存文件

目录 前言: stdin&& stdout && stderr Linux文件操作之系统调用 打开文件 关闭文件 写入文件 读取文件 文件描述符fd fd的分配规则与重定向原理 理解用户级缓冲区 前言: 在往期博客《Linux基础概念》中,我们聊…

Python urllib

Python urllib 库用于操作网页 URL,并对网页的内容进行抓取处理。 本文主要介绍 Python3 的 urllib。 urllib 包 包含以下几个模块: urllib.request - 打开和读取 URL。urllib.error - 包含 urllib.request 抛出的异常。urllib.parse - 解析 URL。url…

数据结构 —— 红黑树

目录 1. 初识红黑树 1.1 红黑树的概念 1.2 红⿊树的规则 1.3 红黑树如何确保最长路径不超过最短路径的2倍 1.4 红黑树的效率:O(logN) 2. 红黑树的实现 2.1 红黑树的基础结构框架 2.2 红黑树的插⼊ 2.2.1 情况1:变色 2.2.2 情况2:单旋变色 2.2…

丹摩征文活动|AIGC实践-基于丹摩算力和CogVideoX-2b实现文生视频

一、CogVideoX简介 CogVideoX 是由智谱AI开源的新一代视频生成模型,属于大型语言模型在多模态应用中的重要突破。CogVideoX-2b 版本在参数规模和推理速度上进行了优化,支持视频从文本描述生成,并进一步提升了视频的分辨率和流畅度。相比于上…

麦当劳自助点餐机——实现

餐厅自助点餐优点 1. 降低服务成本: - 减少了对服务员数量的需求,降低了人力成本。 - 减轻了服务员的工作负担,使其能够更专注于提供优质的服务,如解决顾客的特殊需求和处理复杂问题。 2. 提升点餐效率和准确性&#xf…

Linux【基础篇】T

如何安装Linux操作系统? 1.直接把笔记本的Windows干掉,单独安装Linux系统(初学者对于Linux使用还是比较苦难)。 2.可以安装双系统(开机也是命令行),电脑配置要高。 3.可以安装虚拟机。 --如果…

Linux操作系统之软件安装与包管理器工具

一、实验目的 1、掌握常用的软件包管理器RPM、YUM的使用; 2、掌握内网YUM源的配置方法。 二、实验环境 1台PC、VMware虚拟机、2个CentOS7操作系统 三、实验步骤及内容 1、使用RPM软件包管理器安装软件 (1)从阿里云https://mirrors.aliyun.com/下载CentOS7操作…

贯穿式学习MySQL

注:MySQL版本众多,本次讲述的内容以MySQL8.0.34版本为准 范式化设计 范式具体是用来干嘛的? 我们在设计关系数据库时,要遵从不同的规范要求,设计出合理的关系型数据库,这些不同的规范要求被称为不同的范式…

web——[SUCTF 2019]EasySQL1——堆叠注入

这个题主要是讲述了堆叠注入的用法,来复现一下 什么是堆叠注入 堆叠注入:将多条SQL语句放在一起,并用分号;隔开。 1.查看数据库的名称 查看数据库名称 1;show databases; 发现有名称为ctftraining的数据库 2.对表进行查询 1;show tabl…

「Mac畅玩鸿蒙与硬件31」UI互动应用篇8 - 自定义评分星级组件

本篇将带你实现一个自定义评分星级组件,用户可以通过点击星星进行评分,并实时显示评分结果。为了让界面更具吸引力,我们还将添加一只小猫图片作为评分的背景装饰。 关键词 UI互动应用评分系统自定义星级组件状态管理用户交互 一、功能说明 …

发布 VectorTraits v3.0(支持 X86架构的Avx512系列指令集,支持 Wasm架构及PackedSimd指令集等)

文章目录 支持 X86架构的Avx512系列指令集支持Avx512时的输出信息 支持 Wasm架构及PackedSimd指令集支持PackedSimd时的输出信息VectorTraits.Benchmarks.Wasm 使用说明 新增了向量方法支持 .NET 8.0 新增的向量方法提供交织与解交织的向量方法YGroup3Unzip的范例代码 提供重新…

分布式数据库中间件mycat

MyCat MyCat是一个开源的分布式数据库系统,它实现了MySQL协议,可以作为数据库代理使用。 MyCat(中间件)的核心功能是分库分表,即将一个大表水平分割为多个小表,存储在后端的MySQL服务器或其他数据库中。 它不仅支持MySQL&#xff…

操作系统学习笔记-3.2虚拟内存

文章目录 虚拟内存请求分页管理方式页面置换算法最佳置换算法工作原理OPT 算法的示例最佳置换算法的优点和缺点 先进先出置换算法最近最久未使用时钟置换算法时钟置换算法的工作原理:算法的步骤: 改进型时钟置换算法改进型时钟置换算法的特点&#xff1a…

【计网】物理层学习笔记

【计网】物理层 物理层概述 物理层要实现的功能 在各种传输媒体上传输比特0和1,进而为上面的数据链路层提供透明传输比特流的作用。 物理层接口特性 物理层之下的传输媒体 传输媒体是计网设备之间的物理通路,也称为传输介质。 传输媒体并不包含在…

python机器人Agent编程——实现一个本地大模型和爬虫结合的手机号归属地天气查询Agent

目录 一、前言二、准备工作三、Agent结构四、python模块实现4.1 实现手机号归属地查询工具4.2实现天气查询工具4.3定义创建Agent主体4.4创建聊天界面 五、小结PS.扩展阅读ps1.六自由度机器人相关文章资源ps2.四轴机器相关文章资源ps3.移动小车相关文章资源ps3.wifi小车控制相关…

Spring MVC(一)

1. Spring MVC是什么? 搞清楚Spring MVC之前先搞清楚MVC是什么?MVC是一种架构设计模式,也就是一种思想,M是Model,V是View,C是Controller。他们之间的关系举一个例子来介绍。比如去饭店吃饭,一进…

文件操作:Xml转Excel

1 添加依赖 Spire.Xls.jar <dependency><groupId>e-iceblue</groupId><artifactId>spire.xls</artifactId><version>5.3.3</version></dependency>2 代码使用 package cctd.controller;import com.spire.xls.FileFormat; im…

C语言中的 printf( ) 与 scanf( )

时隔多日&#xff0c;小编我又回来咯小编相信之前的博客能够给大家带来不少的收获。在我们之前的文章中&#xff0c;许多代码块的例子都用到了printf( ) 与 scanf( )这两个函数&#xff0c;大家都知道他们需要声明头文件之后才能使用&#xff0c;那这两个函数是什么呢&#xff…