ASF-YOLO开源 | SSFF融合+TPE编码+CPAM注意力,精度提升!

目录

摘要

1 Introduction

2 Related work

2.1 Cell instance segmentation

2.2 Improved YOLO for instance segmentation

3 The proposed ASF-YOLO model

3.1 Overall architecture

3.2 Scale sequence feature fusion module

3.3 Triple feature encoding module

3.4 Channel and position attention mechanism

3.5 Anchor box optimization

4 Experiments

4.1 Datasets

4.2 Implementation details

4.3 Quantitative results

4.4 Qualitative results

4.5 Ablation study

4.5.1 Effect of the proposed methods

4.5.2 Effect of attention mechanisms

 4.5.3 Effect of convolution module in the backbone

5 Conclusion


摘要

作者提出了一种新颖的注意力尺度序列融合基于YOLO框架(ASF-YOLO),该框架结合了空间和尺度特征,以实现精确快速的细胞实例分割。在YOLO分割框架的基础上,作者采用了尺度序列特征融合(SSFF)模块来增强网络的多尺度信息提取能力,并采用三特征编码器(TPE)模块将不同尺度的特征图进行融合,以增加详细信息。作者进一步引入了一种通道和位置注意力机制,以将SSFF和TPE模块集成起来,专注于具有信息量大、位置相关的较小目标,以提高检测和分割性能。

在两个细胞数据集上的实验验证表明,所提出的ASF-YOLO模型的分割准确性和速度显著提高。该模型在2018年数据科学竞赛数据集上实现了box mAP=0.91,mask mAP=0.887,推理速度达到47.3 FPS,超过了最先进的方法。

代码:https://github.com/mkang315/ASF-YOLO

论文:ASF-YOLO: A novel YOLO model with attentionalscale sequence fusion for cell instance segmentation

1 Introduction

随着样本制备技术和显微成像技术的快速发展,细胞图像的定量处理和分析在医学和细胞生物学等领域中发挥着重要作用。基于卷积神经网络(CNN),通过神经网络训练可以学习不同细胞图像的特征信息,具有较强的泛化性能。两阶段R-CNN系列及其一阶段变体是经典的基于CNN的实例分割任务框架。

在近年来的工作中,YOLO系列已成为实时实例分割的最快、最准确模型之一。由于一阶段设计理念和特征提取能力,YOLO实例分割模型比两阶段分割模型具有更好的准确性和速度。然而,细胞实例分割的困难之处在于细胞图像中的小、密、重叠物体以及细胞边界模糊,这导致细胞精度较低。细胞实例分割需要对细胞图像中不同类型物体的精确详细分割。如图1所示,由于细胞形态、制备方法、成像技术等因素的差异,不同类型的细胞图像在颜色、形态、纹理和其他特征信息方面存在较大差异。

 YOLO框架结构通常包括三个主要部分:backbone、neck和head。YOLO的backbone网络是一个卷积神经网络,在不同的粒度下提取图像特征。Cross Stage Partial Darknet与CSPDarknet53是从YOLOv4修改而来,并被设计为YOLOv5的backbone网络,其中包含C3(包括3个卷积层)和ConvBNSiLU模块。在YOLOv5和YOLOv8的backbone中,第1-5级特征提取分支P1、P2、P3、P4和P5对应着与这些特征图相关的YOLO网络输出。YOLOv5 v7和YOLOv8是第一个主流基于YOLO的架构,可以处理分割任务(除了检测和分类)。

在YOLOv5的特征提取阶段,使用堆叠的多级CSPDarkNet53 backbone网络,然后将backbone网络的三个有效特征分支P3、P4和P5作为FPN结构的多 Scale 融合结构输入。在特征层的解码过程中,backbone网络的三个不同大小的头用于预测目标的边界框。在将P3特征上采样后,像素逐像素解码作为目标分割Mask预测,以完成目标实例分割。在分割头中,三个尺度的特征输出三个不同的 Anchor 框,并且mask proto模块负责输出原型Mask,这些被处理以获取实例分割任务的检测框和分割Mask。

在本文中,作者提出了一种基于单阶段实例分割的细胞图像模型,该模型将注意力 尺度序列融合(Attentional Scale Sequence Fusion)集成到YOLO框架(ASF-YOLO)中。首先使用CSPDarknet53 Backbone 网络在特征提取阶段从细胞图像中提取多维特征信息。作者提出了细胞实例分割部分的新颖网络设计。本工作的贡献如下:

  • 针对不同类型细胞的多 Scale 问题和小型细胞的目标检测与分割问题,作者设计了一个 Scale 序列特征融合(Scale Sequence Feature Fusion,SSFF)模块和一个三特征编码器(Triple Feature Encoder,TFE)模块,将Path Aggregation Network(PANet)结构中 Backbone 网络提取的多 Scale 特征图进行融合。
  • 接下来,作者设计了一个通道和位置注意力机制(Channel and Position Attention Mechanism,CPAM),将来自SSFF和TFC模块的特征信息进行融合,进一步提高实例分割的准确性。
  • 在训练阶段,作者利用EIoU(Elastic Intersection over Union)[14]来优化边界框位置损失,通过最小化边界框和 Anchor 框的宽度和高度差异来实现。在后处理阶段,作者使用软非极大值抑制(Soft Non-Maximum Suppression,Soft-NMS)来改善密集重叠细胞问题。
  • 作者将提出的ASF-YOLO模型应用于密集重叠和各种细胞类型的实例分割任务。据作者所知,这是首次利用基于YOLO的模型进行细胞实例分割。对两个基准细胞数据集的评估表明,与其他最先进的相比,检测准确率和速度具有优势。

2 Related work

2.1 Cell instance segmentation

细胞实例分割可以进一步帮助在图像上完成细胞计数任务,而细胞图像的语义分割则不能。深度学习方法提高了自动核分割的准确性。Johnson等人,Jung等人,Fujita等人和Bancher等人提出了基于Mask R-CNN的细胞同时检测和分割的改进方法。Yi等人和Cheng等人利用SSD方法检测和分割神经细胞实例。Mahbod等人采用语义分割算法U-Net模型进行细胞核分割。

带有注意机制的SSD和U-Net与Mask R-CNN的混合模型或U-Net与Mask R-CNN在细胞实例分割数据集上取得了一定的提升。BlendMask是一个核实例分割框架,具有膨胀卷积聚合模块和上下文信息聚合模块。Mask R-CNN是一个两阶段目标分割框架,速度较慢。SSD、U-Net和BlendMask是端到端(即单阶段)框架,但在分割密集和小型细胞方面性能较差。

2.2 Improved YOLO for instance segmentation

最近,YOLO在实例分割任务上的改进主要集中在注意力机制,改进的 Backbone 网络或网络,以及损失函数。SENet块被集成到改进的YOLACT中,用于在显微镜图像中识别反刍颗粒。YOLOMask,PR-YOLO和YOLO-SF增强了YOLOv5和YOLOv7-Tiny,使用了卷积块注意力模块(CBAM)。改进的 Backbone 网络网络中添加了有效的特征提取模块,使YOLO特征提取过程更加高效。YOLO-CORE通过使用设计的多级约束(包括极距离损失和扇区损失)的显式和直接轮廓回归有效地增强了实例分割的Mask。此外,混合模型另一个YOLOMask和YUSEG结合优化了YOLOv4和原始YOLOv5s,并使用语义分割U-Net网络确保了实例分割的准确性。

3 The proposed ASF-YOLO model

3.1 Overall architecture

 如图3所示,作者提出了一个结合空间和多尺度特征的ASF-YOLO框架,用于细胞图像实例分割。作者开发了一种新颖的特征融合网络架构,由两个主要组件网络组成,可以提供小目标分割的互补信息:

  • SSSF模块,它将来自多个尺度图像的全局或高级语义信息组合在一起;
  • TFE模块,它可以捕捉小目标目标的局部精细细节。将局部和全局特征信息相结合可以产生更准确的分割图。

作者首先对 Backbone 网络中提取的P3、P4和P5的输出特征进行融合。首先,设计SSSF模块,有效地将P3、P4和P5捕获的不同空间尺度覆盖各种大小和形状的细胞类型的特征图融合在一起。在SSSF中,将P3、P4和P5特征图归一化到相同大小,上采样,然后堆叠在一起作为输入到3D卷积,以组合多尺度特征。其次,开发TFE模块,以增强密集细胞中小目标检测,通过在空间维度中拼接不同大小的特征(大、中、小)来捕捉小目标的详细信息。将详细特征图归一化到相同大小,上采样,然后堆叠在一起作为输入到3D卷积,以组合多尺度特征。最后,开发TFE模块,以增强密集细胞中小目标检测,通过在空间维度中拼接不同大小的特征(大、中、小)来捕捉小目标的详细信息。

TFE模块的信息随后通过PANet结构集成到每个特征分支中,然后与SSSF模块的多 尺度信息结合到P3分支中。作者进一步在P3分支中引入了通道和位置注意力机制(CPAM),以利用高阶多尺度特征和详细特征。CPAM中的通道和位置注意力机制可以分别捕获有用的通道并改进与细胞等小目标相关的空间局部定位,从而提高其检测和分割精度。

3.2 Scale sequence feature fusion module

对于细胞图像的多尺度问题,现有文献中使用特征金字塔结构进行特征融合,其中只使用求和或 ConCat 来融合金字塔特征。然而,各种特征金字塔网络无法有效地利用所有金字塔特征图之间的相关性。作者提出了一种新颖的尺度序列特征融合,可以更好地将深度特征图的高维信息与浅层特征图的详细信息相结合,其中图像大小在降采样过程中发生变化,但尺度不变的特征不会发生变化。 尺度空间沿图像的尺度轴构建,不仅表示一个尺度,还表示目标可以具有的各种不同尺度范围。 尺度意味着图像的细节。一个模糊的图像可能会丢失细节,但图像的结构特征可以得到保留。作为输入到SSFF的缩放图像可以由以下方法获得:

其中f(w,h)表示具有宽度w和高度h的2D输入图像。F_{\sigma }(w,h)通过使用一系列卷积在2D高斯滤波器G_{\sigma }(w,h)下进行平滑生成。\sigma是用于卷积的2D高斯滤波器的标准偏差参数。

这些生成的图像具有相同的分辨率,但具有不同的尺度。因此,不同大小的特征图可以被视为尺度空间,并且可以调整不同分辨率的有效特征图到相同分辨率以便拼接。受到在多个视频帧上的2D和3D卷积操作的启发,作者将不同尺度的特征图水平堆叠,并使用3D卷积提取它们的尺度序列特征。由于高分辨率特征图级别P3包含对小目标检测和分割至关重要的信息,因此,作者基于P3级别设计SSFF模块。如图3所示,所提出的SSFF模块包括以下组件:

  • 使用1*1卷积将P4和P5特征级别的通道数更改为256。
  • 最近邻插值方法用于调整它们的大小以适应P3级别的尺寸。
  • 为了增加每个特征层的维度,使用unsqueeze方法,将每个特征层从3D张量(高度、宽度、通道)转换为4D张量(深度、高度、宽度、通道)。
  • 然后,将4D特征图沿着深度维度进行拼接,形成一个3D特征图,以便后续的卷积。
  • 最后,使用3D卷积、3D批标准化和SiLU激活函数(SiLU)来完成尺度序列特征提取。

3.3 Triple feature encoding module

为了识别密集重叠的小目标,可以通过放大图像来参考和比较不同尺度下的形状或外观变化。由于 Backbone 网络的不同特征层具有不同的尺寸,传统的FPN融合机制只将小尺寸的特征图上采样,然后将或添加到前一层特征中,从而忽略了较大尺寸特征层丰富的详细信息。因此,作者提出了TFE模块,将大、中、小特征进行分割,添加大尺寸特征图,并进行特征放大以提高详细特征信息。

图4说明了TFE模块的结构。在特征编码之前,首先调整特征通道数,使其与主要尺度特性一致。然后,将大尺寸特征图(Large)处理由卷积模块,其通道数调整为1,然后使用混合结构(最大池化 + 平均池化)进行下采样,有助于保留高分辨率特征和细胞图像的有效性和多样性。对于小尺寸特征图(Small),卷积模块也用于调整通道数,然后使用最近邻插值方法进行上采样,有助于保持低分辨率图像的丰富局部特征,并防止小目标特征信息的损失。最后,将大、中、小尺寸具有相同尺寸的三个特征图卷积一次,然后按通道进行拼接。

其中F_{TFE}表示TFE模块的输出特征图。F_{l}F_{m}F_{s}分别表示大尺寸、中尺寸和小尺寸的特征图。F_{TFE}F_{l}F_{m}F_{s}的拼接得到。F_{TFE}的分辨率与F_{m}相同,但通道数是F_{m}的三倍。

3.4 Channel and position attention mechanism

为了提取不同通道中包含的代表性特征信息,作者提出了CPAM,以集成详细特征信息和多尺度特征信息。CPAM的结构如图5所示。它包括一个从TFE(输入1)接收输入的通道注意网络,以及一个从通道注意网络和SSFF(输入2)的输出叠加接收输入的位置注意网络。

 输入1为通道注意网络,是经过PANet处理后的特征图,包含TFE的详细特征。SENet通道注意力块首先对每个通道进行独立的全局平均池化,并使用两个全连接层以及一个非线性Sigmoid函数来生成通道权重。这两个全连接层旨在捕捉非线性跨通道交互,这涉及降低维数以控制模型复杂度,但维数减少会导致通道注意力预测出现副作用,捕捉所有通道之间的依赖关系是低效和不必要的。

作者引入了一种不需要降维的注意力机制来有效地捕捉跨通道交互。在不对通道维数进行降低的情况下,通过考虑每个通道及其k个最近邻,即使用大小为k的1D卷积来实现局部跨通道交互的捕捉,其中核大小k表示局部跨通道交互的覆盖范围,即参与一个通道注意力预测的邻居数量。为了获得最佳覆盖范围,可能需要对不同网络结构和不同数量的卷积模块进行k的手动调整,但这非常费时。由于卷积核大小k与通道维数C成正比,因此可以看出k和C之间存在映射关系。通道维数通常为2的指数,映射关系如下。

为了使具有较大通道数的层中能够实现更多的跨通道交互,可以通过一个函数调整一维卷积的卷积核大小。卷积核大小可以通过以下公式计算:

其中|_{odd}表示最近邻的奇偶性。参数\Upsilon设置为2,b设置为1。根据上述非线性映射关系,高值通道的交换时间更长,而低值通道的交换时间更短。因此,通道注意力机制可以对多个通道特征进行更深层次的挖掘。

将通道注意力机制的输出与SSFF(输入2)的特征图作为位置注意力网络的输入,可以为每个细胞提取关键的位置信息。与通道注意力机制不同,位置注意力机制首先将输入特征图按宽度和高度分为两部分,然后分别对这两部分在轴和上进行特征编码,最后将它们合并以生成输出。

更精确地说,输入特征图在水平和垂直轴上进行池化,以保留特征图的空间结构信息,这可以计算如下:

3.5 Anchor box optimization

通过优化损失函数和非极大值抑制(NMS),三个检测Head中的 Anchor 框得到了改进,从而准确地完成了不同大小的细胞图像的实例分割任务。

互交面积(IoU)通常被用作 Anchor 框损失函数,通过计算标注框和预测框之间的重叠程度来确定收敛。然而,经典的IoU损失无法反映目标框和 Anchor 框之间的距离和重叠。为了解决这些问题,GIoU,DIoU和CIoU被提出。CIoU引入了基于DIoU损失的影响因子,YOLOv5和YOLOv8使用该影响因子。虽然考虑了重叠区域和中心点距离对损失函数的影响,但同时也考虑了标注框和预测框的宽高比(即,长宽比)对损失函数的影响。然而,它仅反映了标注框和预测框之间的长宽比差异,而没有反映标注框和预测框的实际长宽关系。EIoU最小化了目标框和 Anchor 框之间的宽高差异,可以提高小目标的定位效果。EIoU损失可以分为三个部分:IoU损失函数L_{IoU},距离损失函数L_{dis}和长宽比损失函数L_{asp},其公式如下所示。

 

其中\rho (\cdot )=\left | \left | b-b_{gt} \right | \right |_{2}表示欧几里得距离,bb_{gt}分别表示框BB_{gt}和的中心点;b_{g}t,w_{g}t ,h_{g}t和分别表示GT框的中心点、宽和高;w_{c}h_{c}分别表示覆盖两个框的最小外接框的宽和高。与CIoU相比,EIoU不仅加快了预测帧的收敛速度,还提高了回归精度。因此,作者在 Head 部分选择EIoU替换CIoU。

为了消除重复的 Anchor 框,检测模型在同一时间输出多个检测边界,特别是在周围有很多高置信度检测边界的情况下。经典的NMS的原则是获取局部最大值。如果当前框与最高得分检测帧之间的差异大于阈值,则将框的分数直接设置为零。为了克服由经典NMS引起的错误,作者采用Soft-NMS,它使用高斯函数作为权重函数将预测边框的分数减少以替换原始分数,而不是直接将其设置为零,从而修改了框的错误规则。

4 Experiments

4.1 Datasets

作者在两个细胞图像数据集上评估了提出的ASF-YOLO模型的性能:DSB2o18和BCC数据集。DSB2o18数据集包含670个细胞核图像带有分割Mask,旨在评估算法在细胞类型、放大倍数和成像模式(平面光 vs. 荧光)变化下的泛化性。每个Mask包含一个细胞核,不同Mask之间没有重叠(没有像素属于两个Mask)。该数据集按8:2的比例将训练集和测试集划分。训练集和测试集的样本量分别为536和134张图像。

乳腺癌细胞(BCC)数据集来自加州大学圣塔芭芭拉分校(UCSB CBI)的生物图像信息中心。该数据集包含160张使用伊红-复染色法(hematoxylin and eosin,H&E)染色的病理图像,这些图像用于乳腺癌细胞检测,并附有相关 GT 数据。该数据集按80%为训练集,20%为测试集的比例随机划分。

4.2 Implementation details

实验在NVIDIA GeForce 3090(24G)GPU上实现,使用Pytorch 1.10,Python 3.7和CUDA 11.3依赖项。作者采用了预训练的COCO数据集的初始权重。输入图像大小为640*640。训练数据的批量大小为16。训练过程持续100个周期。作者使用随机梯度下降(SGD)作为优化函数训练模型。SGD的超参数设置为动量0.9,初始学习率0.001和权重衰减0.0005。

4.3 Quantitative results

表1展示了在DSB2018数据集上,提出的ASF-YOLO与其他经典和最先进的方法(包括Mask R-CNN,Cascade Mask R-CNN,SOLO,SOLOv2,YOLACT,Mask R-CNN with Swin Transformer backbone(Mask RCNN Swin T),YOLOv5l-seg v7.o和YOLOv8l-seg)之间的性能比较。

作者的模型在46.18M参数下达到了最佳性能,Box 为0.91,Mask 为0.887,推理速度达到了47.3帧/秒,这是最佳性能。由于图像输入尺寸为8001200,使用Swin Transformer背心的Mask R-CNN的准确性和速度并不高。作者的模型也超过了经典的单阶段算法SOLO和YOLACT。

作者提出的模型在BCC数据集上也实现了最佳的实例分割性能,如表2所示。实验验证了ASF-YOLO在不同数据集和不同细胞类型下的泛化能力。

4.4 Qualitative results

图6提供了不同方法在DSB2o18数据集样本图像上细胞分割的视觉比较。通过使用TFC模块提高小目标检测性能,ASF-YOLO在单个通道下对密集且小目标的细胞图像具有很好的召回值。通过使用SSSF模块增强多尺度特征提取性能,ASF-YOLO在复杂背景下的大尺寸细胞图像上也具有很好的分割精度。这表明作者的方法对不同细胞类型具有很好的泛化能力。

从图6(a)和(b)可以看出,每个模型都有很好的结果,因为细胞图像相对简单。从图6(c)和(d)可以看出,Mask R-CNN由于两阶段算法的设计原理,具有较高的假阳性检测率。SOLO有许多漏检,YOLOvgl-seg无法分割模糊边界的细胞。

4.5 Ablation study

作者对提出的ASF-YOLO模型进行了系列的广泛消融研究。

4.5.1 Effect of the proposed methods

表3显示了每个建议模块在提高分割性能方面的贡献。YOLOv5l-seg中使用Soft-NMS可以克服密集小目标检测时的错误抑制问题,并提供性能改进。EIoU损失函数改善了小物体边界框的效果,提高了 by 1.8%。SsFF,TFC和CPAM模块有效改善了模型性能,解决了细胞图像中小物体实例分割的问题。

4.5.2 Effect of attention mechanisms

与channel attention SENet,channel and spatial attention CBAM和spatial attention CA相比,提出的CPAM注意力机制尽管计算量和参数略有增加,但提供了更好的性能。

图7展示了使用ASF-YOLO模型中不同注意力模块进行分割的结果可视化。提出的CPAM具有更好的通道和位置特征信息,并从原始图像中挖掘出更丰富的特征。

 4.5.3 Effect of convolution module in the backbone

表5显示,在提出的模型中,将YOLOv5的C3模块替换为YOLOv8的C2f模块,导致模型在两个数据集上的C2f模块性能降低。

5 Conclusion

作者开发了一种准确快速的细胞图像实例分割模型ASF-YOLO,用于细胞图像分析,该模型将空间和尺度特征融合用于细胞图像的检测和分割。作者在YOLO框架中引入了几个新颖的模块。SSFF和TFE模块增强了多尺度和小物体实例分割性能。通道和位置注意力机制进一步挖掘了两个模块的特征信息。

大量实验结果表明,作者提出的模型能够处理各种细胞图像的实例分割任务,并显著提高了原始YOLO模型在细胞分割方面的准确性,由于小和密集物体的存在。作者的方法在细胞实例分割的准确性和推理速度方面都显著优于最先进的方法。由于本文中的数据集较小,模型的泛化性能需要进一步提高。此外,在ASF-YOLO中每个模块的有效性在消融研究中进行了讨论,这为进一步改进提供了研究依据。

 

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Kvaser Leaf v3 重磅上新!报文速率高达20000条/秒!支持CAN FD!EAN: 73-30130-01424-4

作为CAN总线领域的专家,Kvaser深耕行业40年,至今已经累计推出100多款CAN产品。其中稳定小巧、便携易用的Kvaser经典Leaf系列是将计算机与CAN网络连接并获取CAN/CAN FD数据的最简单、性价比最高的方法之一。Kvaser秉持着将用户放在重要位置的原则&#xf…

6.5.编解码器信息的收集

那在上节课中呢?我向你介绍了add track相关的内容,那今天呢?我们来看看编解码器信息的收集。那在这里呢,我们需要问几个重要的问题,那首先呢,就是我们上节课通过,可以让web rtc知道我们都要传输…

智能优化算法应用:基于旗鱼算法3D无线传感器网络(WSN)覆盖优化 - 附代码

智能优化算法应用:基于旗鱼算法3D无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用:基于旗鱼算法3D无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.旗鱼算法4.实验参数设定5.算法结果6.参考文献7.MA…

优先考虑静态成员类

在Java中,静态成员类(static nested class)是一种嵌套在另一个类中的类,且被声明为静态。静态成员类不依赖于外部类的实例,可以直接通过外部类的类名来访问。 优先考虑使用静态成员类的情况通常是当这个类与外部类的实…

一文带你了解UI自动化测试框架

PythonSeleniumUnittestDdtHTMLReport分布式数据驱动自动化测试框架结构 1、Business:公共业务模块,如登录模块,可以把登录模块进行封装供调用 ------login_business.py from Page_Object.Common_Page.login_page import Login_Page from H…

探秘闭包:隐藏在函数背后的小秘密(上)

🤍 前端开发工程师(主业)、技术博主(副业)、已过CET6 🍨 阿珊和她的猫_CSDN个人主页 🕠 牛客高级专题作者、在牛客打造高质量专栏《前端面试必备》 🍚 蓝桥云课签约作者、已在蓝桥云…

C# 图解教程 第5版 —— 第17章 转换

文章目录 17.1 什么是转换17.2 隐式转换17.3 显示转换和强制转换17.4 转换的类型17.5 数字的转换17.5.1 隐式数字转换17.5.2 溢出检测上下文17.5.3 显示数字转换 17.6 引用转换17.6.1 隐式引用转换17.6.2 显式引用转换17.6.3 有效显式引用转换 17.7 装箱转换17.7.1 装箱是创建副…

小程序 -网络请求post/get

1.1网络请求的概念(post和get) 1.2步骤 1.3 应用函数 js里面写,用bindtap绑在控件上,就不讲了 实例代码: //发起get数据请求get_info(){wx.request({url:https://www.escook.cn/api/get,//请求的接口地址,必须基于https协议//请求的方式met…

SpringBoot的Starter自动化配置,自己编写配置maven依赖且使用及短信发送案例

目录 一、Starter机制 1. 是什么 2. 有什么用 3. 应用场景 二、短信发送案例 1. 创建 2. 配置 3. 编写 4. 形成依赖 6. 其他项目的使用 每篇一获 一、Starter机制 1. 是什么 SpringBoot中的starter是一种非常重要的机制(自动化配置),能够抛弃以前繁杂…

【五】Python 代理模式

文章目录 5.1 代理模式概述5.1.1 代理介绍5.1.2 代理模式的作用 5.2 代理模式的UML类图5.3 了解不同类型的代理5.3.1虚拟代理5.3.2 远程代理5.3.3 保护代理5.3.4 智能代理 5.4 现实世界中的代理模式5.5 代理模式的优点5.6 门面模式和代理模式之间的比较 5.1 代理模式概述 5.1.…

卷积神经网络(含案例代码)

概述 卷积神经网络(Convolutional Neural Network,CNN)是一类专门用于处理具有网格结构数据的神经网络。它主要被设计用来识别和提取图像中的特征,但在许多其他领域也取得了成功,例如自然语言处理中的文本分类任务。 C…

Paper Reading: (CCVC) 基于冲突的半监督语义分割跨视图一致性

目录 简介目标/动机工作重点方法CVC: 跨视图一致性CPL: 基于冲突的伪标记 实验设置comparison with SOTAAblation 总结 简介 题目:《Conflict-Based Cross-View Consistency for Semi-Supervised Semantic Segmentation》, CVPR’23, 基于冲突的半监督语…

HPM5300系列--第二篇 Visual Studio Code开发环境以及多种调试器调试模式

一、目的 在博文《HPM5300系列--第一篇 命令行开发调试环境搭建》、《HPM6750系列--第四篇 搭建Visual Studio Code开发调试环境》中我们介绍了命令行方式开发环境,也介绍了HPM6750evkmini开发板如何使用Visual Studio Code进行开发调试(其中调试方式使用…

AcWing 338. 计数问题

文章目录 题目描述问题分析代码 题目描述 AcWing 338.计数问题 给定两个整数 a a a 和 b b b, 求 a a a 和 b b b中所有数字中0~9的出现次数 数据范围&#xff1a; 0 < a, b < 100000000 输入格式&#xff1a; 输入包含多组测试数据。 每组测试数据占一行&#xff0c;包…

AI会干掉美图秀秀们吗?

网上流传着这样一个传说&#xff0c;亚洲有三大“邪术”&#xff0c;韩国整容术、日本化妆术&#xff0c;还有震惊世界的中国PS 术。虽然是网友的戏称&#xff0c;但也反映了PS美图技术在国内盛行一时。 而说起美图技术就不得不提到美图公司&#xff0c;但美图公司近些年的日子…

影视动画行业发展现状与方向:AI技术推动动画工业化体系新变革

工业化体系 是国产动画强国的必经之路 中国动画的百年历程不仅是创作者们展现艺术才华的历程&#xff0c;也是一代代中国动画人不懈追求动画工业体系建设的历程。 为什么现在的中国动画需要建立工业化体系呢&#xff1f; 举个例子&#xff0c;在建立工业化体系之前&#xff…

推荐一个小而全的第三方登录开源组件

大家好&#xff0c;我是 Java陈序员。 我们在企业开发中&#xff0c;常常需要实现登录功能&#xff0c;而有时候为了方便&#xff0c;就需要集成第三方平台的授权登录。如常见的微信登录、微博登录等&#xff0c;免去了用户注册步骤&#xff0c;提高了用户体验。 为了业务考虑…

网络基础(十):DHCP原理与配置

目录 1、DHCP的概念 2、使用DHCP的优势 3、DHCP的分配方式 4、可分配的地址信息 5、DHCP的工作原理&#xff08;租约过程&#xff09; 6、DHCP动态配置主机地址&#xff08;使用eNSP软件配置&#xff09; 1、DHCP的概念 DHCP(Dynamic HostConfiguration Protocol&#x…

SLAM学习——相机模型(针孔+鱼眼)

针孔相机模型 针孔相机模型是很常用&#xff0c;而且有效的模型&#xff0c;它描述了一束光线通过针孔之后&#xff0c;在针孔背面投影成像的关系&#xff0c;基于针孔的投影过程可以通过针孔和畸变两个模型来描述。 模型中有四个坐标系&#xff0c;分别为world&#xff0c;c…

vite(一)——基本了解和依赖预构建

文章目录 一、什么是构建工具&#xff1f;1.为什么使用构建工具&#xff1f;2.构建工具的作用&#xff1f;3.构建工具怎么用&#xff1f; 二、经典面试题&#xff1a;webpack和vite的区别1.编译方式不同2.基础概念不同3.开发效率不同4.扩展性不同5.应用场景不同6.总结&#xff…