大选择核网络在遥感目标检测中的应用

摘要

论文链接:https://arxiv.org/pdf/2303.09030.pdf
最近关于遥感目标检测的研究主要集中在改进有向边界框的表示,但忽略了遥感场景中呈现的独特先验知识。这种先验知识很有用,因为如果没有参考足够远的上下文,可能会错误地检测到微小的遥感对象,而不同类型对象所需的远程上下文可能会有所不同。在本文中,我们考虑了这些先验,并提出了大选择性核网络(LSKNet)。LSKNet可以动态调整其大的空间感受野,以更好地模拟遥感场景中各种对象的测距上下文。据我们所知,这是第一次在遥感目标检测领域探索大和选择性核机制。LSKNet在标准基准上创造了新的最先进得分,即HRSC2016(98.46%mAP)、DOTA-v1.0(81.85%mAP)和FAIR1M-v1.0(47.87%mAP)。基于类似的技术,我们在2022年大湾区国际算法竞赛中排名第二。代码可在https://github.com/zcablii/Large-Selective-Kernel-Network获取。

简介

遥感目标检测【75】是计算机视觉的一个领域,专注于在航空图像中识别和定位感兴趣的物体,如车辆或飞机。近年来,一个主流趋势是生成准确符合被检测物体方向的边界框,而不是简单地在它们周围绘制水平框。因此,大量的研究集中在改进遥感目标检测中有向边界框的表示。这主要是通过开发专门的检测框架实现的,如RoI Transformer【12】、Oriented R-CNN【62】和R3Det【68】,以及有向框编码技术,如滑动顶点【64】和中点偏移框编码【62】。此外,还提出了许多损失函数,包括GWD【70】、KLD【72】和调制损失【50】,以进一步提高这些方法的性能。

然而,尽管取得了这些进展,但相对较少的研究考虑到遥感图像中存在的强先验知识。航空图像通常是以高分辨率从鸟瞰角度拍摄的。特别是,航空图像中的大多数物体可能尺寸很小,仅根据其外观难以识别。相反,成功识别这些物体往往依赖于它们的上下文,因为周围环境可以提供有关其形状、方向和其他特征的宝贵线索。根据对主流遥感数据集的分析,我们确定了两个重要的先验:

  • (1)遥感图像中物体的准确检测通常需要广泛的上下文信息。如图1(a)所示,遥感图像中物体检测器使用的有限上下文通常会导致分类错误。例如,在上面的图像中,检测器可能会由于其典型特征将交叉口分类为交叉路口,但实际上它并不是交叉路口。同样,在下面的图像中,检测器可能会由于大树的存在将交叉口分类为非交叉路口,但这同样是错误的。这些错误之所以发生,是因为检测器只考虑了物体附近有限的上下文信息。图1(b)中的船舶和车辆示例中也可以观察到类似的场景。
    在这里插入图片描述

  • (2)不同类型对象所需的广泛上下文信息差异很大。如图2所示,遥感图像中准确目标检测所需的上下文信息量根据所检测对象的类型可以有很大的不同。例如,由于独特的可区分场地边界线,足球场可能需要相对较少的额外上下文信息。相比之下,环岛可能需要更大范围的上下文信息,以区分花园和环形建筑。交叉口,特别是那些被树木部分覆盖的交叉口,由于相交道路之间的长程依赖关系,通常需要极大的感受野。这是因为树木和其他障碍物的存在使得仅基于外观识别道路和交叉口本身变得困难。其他物体类别,如桥梁、车辆和船舶,为了准确检测和分类,也可能需要不同尺度的感受野。
    在这里插入图片描述

为了解决遥感图像中准确检测物体的挑战,这通常需要广泛和动态的上下文信息范围,我们提出了一种名为大选择核网络(LSKNet)的新方法。我们的方法涉及动态调整特征提取主干的感受野,以便更有效地处理被检测物体的不同广泛上下文。这是通过空间选择性机制实现的,该机制有效地对由一系列大深度核处理的特征进行加权,然后在空间上合并它们。这些核的权重是根据输入动态确定的,使模型能够自适应地使用不同的大核并根据需要调整每个目标的空间感受野。

据我们所知,我们提出的LSKNet是第一个研究和讨论在遥感目标检测中使用大和选择性核的模型。尽管我们的模型很简单,但它在三个流行的数据集上实现了最先进的性能:HRSC2016(98.46%mAP)、DOTA-v1.0(81.64%mAP)和FAIR1M-v1.0(47.87%mAP),超过了先前公布的结果。此外,我们证明了我们的模型的行为完全与上述两个先验相符,这反过来也验证了所提出机制的有效性。

2.相关工作

2.1.遥感目标检测框架

高性能的遥感目标检测器通常依赖于RCNN【52】框架,该框架由区域提议网络和区域CNN检测头组成。近年来,对RCNN框架提出了几种变种。两阶段的RoI Transformer【12】在第一阶段使用全连接层旋转候选水平锚框,然后提取框内的特征进行进一步的回归和分类。SCRDet【71】使用注意力机制来减少背景噪声,改善对拥挤和小物体的建模。Oriented R-CNN【62】和Gliding Vertex【64】引入了新的框编码系统,以解决旋转角度周期性导致的训练损失不稳定问题。一些方法【29、79、56】将遥感检测视为点检测任务【67】,为解决遥感检测问题提供了另一种方式。

而不是依赖于提议的锚框,一阶段检测框架直接从网格密集采样的锚框中分类和回归有向边界框。一阶段的S2A网络【20】通过有向特征对齐和方向不变特征提取提取鲁棒的对象特征。另一方面,DRN【46】利用注意力机制动态细化主干提取的特征,以进行更准确的预测。与Oriented R-CNN和Gliding Vertex不同,RSDet【50】通过引入调制损失来解决回归损失的不连续性。AOPG【6】和R3Det【68】采用渐进回归的方法,从粗到细的粒度精炼边界框。除了基于CNN的框架,AO2-DETR【9】将基于transformer的检测框架DETR【4】引入遥感检测任务,带来了更多的研究多样性。

2.2.大核网络

基于Transformer的模型,如视觉Transformer(ViT)【14、49、55、11、1】、Swin Transformer【36、22、63、76、47】和PVT【57】在计算机视觉中受到了欢迎,因为它们在图像识别任务中的有效性。研究【51、65、78、42】表明,大感受野是它们成功的关键因素。有鉴于此,最近的工作表明,精心设计的具有大感受野的卷积网络也可以与基于Transformer的模型高度竞争。例如,ConvNeXt【37】在其主干中使用7×7深度卷积,从而在下游任务中取得了显著的性能改进。此外,RepLKNet【13】甚至通过重新参数化使用31×31卷积核,实现了引人注目的性能。后续工作SLaK【35】通过核分解和稀疏组技术进一步将核大小扩展到51×51。VAN【17】引入了大核的高效分解作为卷积注意力。同样,SegNeXt【18】和Conv2Former【25】证明了大核卷积在调制具有更丰富上下文的卷积特征中起着重要作用。

2.3.注意力/选择机制

注意力机制是一种简单而有效的方法,可以增强各种任务的神经表示。通道注意力SE块【27】使用全局平均信息对特征通道进行重加权,而空间注意力模块,如GENet【26】、GCNet【3】和SGE【31】,通过空间掩码增强了网络对上下文信息的建模能力。CBAM【60】和BAM【48】结合了通道注意力和空间注意力,以利用两者的优点。

除了通道/空间注意力机制外,核选择也是一种自适应和有效的动态上下文建模技术。CondConv【66】和动态卷积【5】使用并行核自适应地从多个卷积核中聚合特征。SKNet【30】引入了具有不同卷积核的多个分支,并沿通道维度选择性地将它们组合起来。ResNeSt【77】通过将输入特征图划分为几个组来扩展SKNet的思想。与SKNet类似,SCNet【34】使用分支注意力来捕捉更丰富的信息,使用空间注意力来提高定位能力。可变形卷积网络【80、8】为卷积单元引入了灵活的核形状。

我们的方法与SKNet【30】最为相似,但两种方法有两个关键区别。首先,我们提出的选择机制明确依赖于通过分解的一系列大核,这与大多数现有的基于注意力的方法不同。其次,我们的方法在空间维度上自适应地聚合大核之间的信息,而不是像SKNet那样在通道维度上进行聚合。这种设计对于遥感任务更直观和有效,因为逐通道的选择无法对图像空间中不同目标的空间变化进行建模。详细的结构比较如图3所示。
在这里插入图片描述

3.方法

3.1. LSKNet架构

整体架构是建立在最近流行的结构[37,58,17,25,74] (参见补充材料(SM)中的细节)上,并使用重复的构建块。

本文使用的LSKNet不同变体的详细配置如表1所示。每个LSKNet块由两个剩余子块组成:大内核选择(LK Selection)子块和前馈网络(FFN)子块。核心LSK模块(图4)嵌入在LK选择子块中。它由一系列大核卷积和一个空间核选择机制组成,稍后将详细阐述。
在这里插入图片描述
在这里插入图片描述

3.2.大核卷积

根据引言中所述的先验(2),建议对一系列多个长程上下文进行建模以进行自适应选择。因此,我们提出通过显式地将大核卷积分解为一系列具有大增长核和增加膨胀的深度卷积来构建大核卷积。具体来说,该系列中第i个深度卷积的核大小k、膨胀率d和感受野RF的扩展定义如下:
k i − 1 ≤ k i ; d 1 = 1 , d i − 1 < d i ≤ R F i − 1 , (1) k_{i-1} \leq k_{i} ; d_{1}=1, d_{i-1}<d_{i} \leq R F_{i-1}, \tag{1} ki1ki;d1=1,di1<diRFi1,(1)
R F 1 = k 1 , R F i = d i ( k i − 1 ) + R F i − 1 (2) R F_{1}=k_{1}, R F_{i}=d_{i}\left(k_{i}-1\right)+R F_{i-1} \tag{2} RF1=k1,RFi=di(ki1)+RFi1(2)

核大小和膨胀率的增加确保了感受野足够快速地扩展。我们在膨胀率上设置了一个上限,以保证膨胀卷积不会在特征图之间引入间隙。例如,我们可以将一个大核分解为2或3个深度卷积,如表2所示,它们的理论感受野分别为23和29。

所提出的设计有两个优点。首先,它显式地产生了具有不同大感受野的多个特征,这使得后续的核选择更容易。其次,顺序分解比简单地应用一个更大的核更有效。如表2所示,在相同的理论感受野下,我们的分解大大减少了与标准大卷积核相比的参数数量。为了从输入X中获得具有丰富上下文信息的特征,我们应用了一系列具有不同感受野的分解深度卷积:
U 0 = X , U i + 1 = F i d w ( U i ) , (3) \mathbf{U}_{0}=\mathbf{X}, \quad \mathbf{U}_{i+1}=\mathcal{F}_{i}^{d w}\left(\mathbf{U}_{i}\right), \tag{3} U0=X,Ui+1=Fidw(Ui),(3)

其中 F i d w ( ⋅ ) \mathcal{F}_{i}^{d w}(\cdot) Fidw()是具有核 k i k_{i} ki和膨胀 d i d_{i} di的深度卷积。假设有N个分解的核,每个核进一步由 1 × 1 1\times 1 1×1卷积层 F 1 × 1 ( ⋅ ) \mathcal{F}^{1 \times 1}(\cdot) F1×1()处理:
U ~ i = F i 1 × 1 ( U i ) , for  i in  [ 1 , N ] , (4) \widetilde{\mathbf{U}}_{i}=\mathcal{F}_{i}^{1 \times 1}\left(\mathbf{U}_{i}\right) \text {, for } i \text { in }[1, N], \tag{4} U i=Fi1×1(Ui), for i in [1,N],(4)

允许每个空间特征向量的通道混合。然后,提出了一个选择机制,根据获得的多尺度特征动态选择不同对象的核,这将在后面介绍。

3.3. 空间核选择

为了增强网络关注最相关空间上下文区域以检测目标的能力,我们使用空间选择机制在不同尺度上从大卷积核中选择特征图。首先,我们将从不同核和不同感受野范围获得的特征进行连接:
U ~ = [ U ~ 1 ; … ; U ~ i ] , (5) \widetilde{\mathbf{U}}=\left[\widetilde{\mathbf{U}}_{1} ; \ldots ; \widetilde{\mathbf{U}}_{i}\right], \tag{5} U =[U 1;;U i],(5)
然后通过对 U ~ \widetilde{\mathbf{U}} U 应用基于通道的平均池化和最大池化(表示为 P avg  ( ⋅ ) 和 P max ⁡ ( ⋅ ) ) \mathcal{P}{\text {avg }}(\cdot)和\left.\mathcal{P}{\max }(\cdot)\right) Pavg ()Pmax())有效地提取空间关系:
S A avg  = P avg  ( U ~ ) , S A max  = P max ⁡ ( U ~ ) (6) \mathbf{S A}_{\text {avg }}=\mathcal{P}_{\text {avg }}(\widetilde{\mathbf{U}}), \mathbf{S A}_{\text {max }}=\mathcal{P}_{\max }(\widetilde{\mathbf{U}}) \tag{6} SAavg =Pavg (U ),SAmax =Pmax(U )(6)

其中 S A a v g \mathbf{S} \mathbf{A}_{a v g} SAavg S A max ⁡ \mathbf{S} \mathbf{A}_{\max } SAmax是平均池化和最大池化的空间特征描述符。为了允许不同空间描述符之间的信息交互,我们将空间池化的特征连接起来,并使用卷积层 F 2 → N ( ⋅ ) \mathcal{F}^{2 \rightarrow N}(\cdot) F2N()将池化的特征(具有2个通道)转换为N个空间注意力图:
S A ^ = F 2 → N ( [ S A avg  ; S A max ⁡ ] ) (7) \widehat{\mathbf{S A}}=\mathcal{F}^{2 \rightarrow N}\left(\left[\mathbf{S} \mathbf{A}_{\text {avg }} ; \mathbf{S A}_{\max }\right]\right) \tag{7} SA =F2N([SAavg ;SAmax])(7)

对于每个空间注意力图 S A ^ i \widehat{\mathbf{S A}}_{i} SA i,应用sigmoid激活函数以获得每个分解的大核的个体空间选择掩码:
S A ‾ i = σ ( S A ^ i ) ,  (8) \overline{\mathbf{S A}}_{i}=\sigma\left(\widehat{\mathbf{S A}}_{i}\right) \text {, } \tag{8} SAi=σ(SA i)(8)

其中 σ ( ⋅ ) \sigma(\cdot) σ()表示sigmoid函数。然后,来自分解大核序列的特征通过其相应的空间选择掩码进行加权,并由卷积层 F ( ⋅ ) \mathcal{F}(\cdot) F()融合,以获得注意力特征 S \mathbf{S} S
S = F ( ∑ i = 1 N ( S A i ~ ⋅ U ~ i ) ) (9) \mathbf{S}=\mathcal{F}\left(\sum_{i=1}^{N}\left(\widetilde{\mathbf{S A}_{i}} \cdot \widetilde{\mathbf{U}}_{i}\right)\right) \tag{9} S=F(i=1N(SAi U i))(9)

LSK模块的最终输出是输入特征 X 和 S \mathbf{X}和\mathbf{S} XS之间的逐元素乘积,类似于[17,18,25]:
Y = X ⋅ S .  (10) \mathbf{Y}=\mathbf{X} \cdot \mathbf{S} \text {. } \tag{10} Y=XS(10)

图4显示了LSK模块的详细概念说明,其中我们直观地演示了大选择核如何通过自适应地收集不同对象的相应大接受场来工作。

4. 实验

4.1. 数据集

HRSC2016 [39]是一个用于船舶检测的高分辨率遥感图像数据集。它包含1061张图像,其中包含2976个船舶实例。

DOTA-v1.0 [61]由2806张遥感图像组成。它包含15个类别的188282个实例:飞机(PL)、棒球钻石(BD)、桥梁(BR)、地面跑道(GTF)、小型车辆(SV)、大型车辆(LV)、船舶(SH)、网球场(TC)、篮球场(BC)、储罐(ST)、足球场(SBF)、环形交叉口(RA)、港口(HA)、游泳池(SP)和直升机(HC)。

FAIR1M-v1.0 [53]是最近发布的遥感数据集,由15266张高分辨率图像和超过100万个实例组成。它包含5个类别和37个子类别对象。

4.2. 实现细节

在我们的实验中,我们报告了检测模型在HRSC2016、DOTA-v1.0和FAIR1M-v1.0数据集上的结果。为了确保公平性,我们采用了与其他主流方法[62, 20, 21]相同的数据集处理方法。更多细节可以在SM中找到。在我们的实验中,主干网络首先在ImageNet-1K[10]数据集上进行预训练,然后在目标遥感基准上进行微调。在消融研究中,我们采用100个epoch的主干网络预训练计划以提高实验效率(表3、5、4、6、7)。我们采用300个epoch的主干网络预训练策略以追求更高的精度(表8、9、10),类似于[62, 20, 68, 6]。在主要结果(表8、9)中,“Pre.”列表示网络/主干网络预训练的数据集(IN:Imagenet[10]数据集;CO:Microsoft COCO[33]数据集;MA:Million-AID[40]数据集)。除非另有说明,否则由于Oriented RCNN[62]具有令人信服的性能和效率,LSKNet默认在其框架内构建。所有模型都在训练集和验证集上进行训练,并在测试集上进行测试。按照[62],我们使用AdamW[41]优化器在HRSC2016数据集上训练模型36个epoch,在DOTA-v1.0和FAIR1M-v1.0数据集上训练模型12个epoch。初始学习率设置为0.0004(对于HRSC2016)和0.0002(对于其他两个数据集),权重衰减为0.05。我们使用8个RTX3090 GPU,批量大小为8进行模型训练,并使用单个RTX3090 GPU进行测试。我们在本文中报告的所有FLOPs都是使用1024×1024图像输入计算的。
在这里插入图片描述

4.3. 消融实验

在本节中,我们报告了DOTA-v1.0测试集的消融研究结果,以研究其有效性。

大核分解。决定分解的核数量是LSK模块的关键选择。我们遵循公式(1)来配置分解的核。当理论感受野固定在29时,关于大核分解数量的消融研究结果如表3所示。这表明将大核分解为两个深度大核可以在速度和精度之间取得良好的平衡,在FPS(每秒帧数)和mAP(平均精度均值)方面都取得了最佳性能。
在这里插入图片描述

感受野大小和选择类型。根据我们在表3中的评估,我们发现我们提出的LSKNet的最佳解决方案是将大核分解为两个串联的深度核。此外,表4显示,过小或过大的感受野会阻碍LSKNet的性能,而感受野大小约为23被确定为最有效。此外,我们的实验表明,对于遥感目标检测任务,所提出的空间选择方法比通道注意力(类似于SKNet[30])更有效。
在这里插入图片描述

空间选择中的池化层。我们进行了实验,以确定遥感目标检测中空间选择的最优池化层,如表5所示。结果表明,在我们的LSK模块的空间选择组件中使用最大池化和平均池化可以在不牺牲推理速度的情况下提供最佳性能。

不同检测框架下LSKNet主干的性能。为了验证我们提出的LSKNet主干的通用性和有效性,我们在各种遥感检测框架下评估了其性能,包括两阶段框架O-RCNN[62]和RoI Transformer[12]以及一阶段框架S2ANet[20]和R3Det[68]。表6中的结果显示,与我们提出的LSKNet主干相比,ResNet-18的检测性能得到了显著提高,同时只使用了其38%的参数和少了50%的FLOPs。

与其他大核/选择性注意力主干的比较。我们还将我们的LSKNet与6种流行的高性能大核或选择性注意力主干模型进行了比较。如表7所示,在相似的模型大小和复杂性预算下,我们的LSKNet在DOTA-v1.0数据集上优于所有其他模型。
在这里插入图片描述

4.4、主要结果

HRSC2016结果。我们在HRSC2016数据集上对LSKNet的性能与12种最先进的方法进行了评估。表8所示的结果表明,我们的LSKNet-S在PASCAL VOC 2007[15]和VOC 2012[16]指标下的mAP分别为90.65%和98.46%,优于所有其他方法。
在这里插入图片描述

在DOTA-v1.0上的结果。我们在DOTA-v1.0数据集上将我们的LSKNet与20种最先进的方法进行了比较,如表9所示。我们的LSKNet-T和LSKNet-S分别以81.37%和81.64%的mAP实现了最先进的性能。值得注意的是,我们高性能的LSKNet-S在单个RTX3090 GPU上处理1024x1024图像时达到了18.1 FPS的推理速度。

FAIR1M-v1.0的结果。我们将LSKNet与FAIR1M-v1.0数据集上的其他6个模型进行比较,如表10所示。结果表明,我们的LSKNet-T和LSKNet-S表现得非常好,分别达到了最先进的mAP分数46.93%和47.87%,大大超过了所有其他模型。
在这里插入图片描述

2022年粤港澳大湾区国际算法竞赛。我们的团队为2022年粤港澳大湾区国际算法竞赛实现了一个与LSKNet类似的模型,并获得了第二名,与第一名获胜者的差距很小。竞赛期间使用的数据集是FAIR1Mv2.0[53]的子集,竞赛结果如表11所示。更多细节请参考SM。

4.5、分析

检测结果和EigenCAM[45]的可视化示例如图5所示。它强调了LSKNet-S可以捕获与检测目标相关的更多上下文信息,从而在各种困难情况下获得更好的性能,这证明了我们之前的(1)。
在这里插入图片描述

为了研究每个对象类别的接受野范围,我们将Rc定义为类别c的期望选择性射频面积与GT边界框面积的比值:
R c = ∑ i = 1 I c A i / B i I c , (11) R_{c}=\frac{\sum_{i=1}^{I_{c}} A_{i} / B_{i}}{I_{c}}, \tag{11} Rc=Ici=1IcAi/Bi,(11)

A i = ∑ d = 1 D ∑ n = 1 N ∣ S A ~ n d ⋅ R F n ∣ , B i = ∑ j = 1 J i Area ⁡ ( G T j ) , (12) A_{i}=\sum_{d=1}^{D} \sum_{n=1}^{N}\left|\widetilde{\mathbf{S A}}_{n}^{d} \cdot R F_{n}\right|, B_{i}=\sum_{j=1}^{J_{i}} \operatorname{Area}\left(\mathrm{GT}_{j}\right), \tag{12} Ai=d=1Dn=1N SA ndRFn ,Bi=j=1JiArea(GTj),(12)
其中, I c I_{c} Ic是仅包含对象类别c的图像数量。 A i A_{i} Ai是所有LSK块中输入图像i的空间选择激活的总和,其中D是LSKNet中的块数,N是LSK模块中分解的大核数。 B i B_{i} Bi是所有 J i J_{i} Ji个标注的有方向的对象边界框(GT)的总像素面积。我们在图6中绘制了归一化的 R c R_{c} Rc,它代表了不同对象类别所需的相对上下文范围,以便更好地观察。
在这里插入图片描述

结果表明,桥梁类别与其他类别相比需要更多的额外上下文信息,这主要是由于其与道路的特征相似,并且需要上下文线索来确定其是否被水包围。相反,由于球场类别(如足球场)具有独特的纹理属性,特别是球场边界线,因此它们需要的上下文信息最少。这与我们的知识相符,并进一步支持了先前的观点,即不同对象类别所需的相对上下文信息范围差异很大。

我们进一步研究了LSKNet中的核选择行为。对于对象类别c,LSKNet-T块的核选择差异 Δ A c \Delta A_{c} ΔAc(即,较大核选择-较小核选择)定义为:
Δ A c = ∣ S A ~ larger  − S A ~ smaller  ∣ . (13) \Delta A_{c}=\left|\widetilde{\mathbf{S A}}_{\text {larger }}-\widetilde{\mathbf{S A}}_{\text {smaller }}\right| . \tag{13} ΔAc= SA larger SA smaller  .(13)
在这里插入图片描述

我们在图7中展示了三个典型类别:Bridge、Roundabout和Soccerball-field以及每个LSKNet-T块中所有图像的归一化 Δ A c \Delta A_{c} ΔAc。正如预期的那样,Bridge的所有块的大核的参与程度高于Roundabout,而Roundabout则高于Soccer-ball-field。这与常识相符,因为Soccer-ball-field确实不需要大量的上下文,因为它自身的纹理特征已经足够独特和具有辨别力。

我们还惊奇地发现了LSKNet跨网络深度的另一种选择模式:LSKNet通常在其浅层中使用较大的核,而在较高层中使用较小的核。这表明网络倾向于快速地集中于从低层次的大接受域捕获信息,以便更高层次的语义可以包含足够的接受域,以便更好地进行区分。

5、结论

在本文中,我们提出了用于遥感目标检测任务的大选择核网络(LSKNet),该网络旨在利用遥感图像的固有特征:需要更广泛和适应性的上下文理解。通过调整其大的空间接受场,LSKNet可以有效地模拟不同对象类型的不同上下文细微差别。大量的实验表明,我们提出的轻量级模型在竞争性遥感基准上达到了最先进的性能。

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

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

相关文章

华为云云耀云服务器L实例评测|部署个人在线电子书库 calibre

华为云云耀云服务器L实例评测&#xff5c;部署个人在线电子书库 calibre 一、云耀云服务器L实例介绍1.1 云服务器介绍1.2 应用场景1.3 支持镜像 二、云耀云服务器L实例配置2.1 重置密码2.2 服务器连接2.3 安全组配置 三、部署 calibre3.1 calibre 介绍3.2 Docker 环境搭建3.3 c…

第81步 时间序列建模实战:Adaboost回归建模

基于WIN10的64位系统演示 一、写在前面 这一期&#xff0c;我们介绍AdaBoost回归。 同样&#xff0c;这里使用这个数据&#xff1a; 《PLoS One》2015年一篇题目为《Comparison of Two Hybrid Models for Forecasting the Incidence of Hemorrhagic Fever with Renal Syndr…

Boost程序库完全开发指南:1.1-C++基础知识点梳理

主要整理了N多年前&#xff08;2010年&#xff09;学习C的时候开始总结的知识点&#xff0c;好长时间不写C代码了&#xff0c;现在LLM量化和推理需要重新学习C编程&#xff0c;看来出来混迟早要还的。 1.shared_ptr 解析&#xff1a;shared_ptr是一种计数指针&#xff0c;当引…

Python学习笔记之分支结构与循环结构

Python学习笔记之分支结构与循环结构 一、分支结构 使用关键字if、elif、else 练习1&#xff1a;使用分支结构实现分段函数求值 """分段函数求值""" x float(input("x "))if x > 1:y 3 * x - 5 elif x < -1:y 5 * x 3…

电脑dll丢失应该怎么解决,dll文件丢失怎么恢复方法分享

DLL&#xff08;Dynamic Link Library&#xff0c;动态链接库&#xff09;是一种可执行文件&#xff0c;它包含了在程序运行时需要调用的代码和资源。DLL 文件的主要作用是实现代码和资源的共享&#xff0c;这样在多个程序之间就可以避免重复的代码和资源&#xff0c;从而节省系…

基于HSV空间的彩色图像分割技术

1. 引言 每当我们看到图像时&#xff0c;它通常都是由各种元素和目标组成的。在某些情况下&#xff0c;我们可能会想要从图像中提取某个特定的对象&#xff0c;大家会怎么做&#xff1f;首先我们会想到的是进行crop相关的操作&#xff0c;这在某种程度上是可行的&#xff0c;但…

vue3 element-ui-plus Carousel 跑马灯 的使用 及 踩坑记录

vue3 element-ui-plus Carousel 跑马灯 的踩坑记录 Carousel 跑马灯首页跑马灯demo Carousel 跑马灯 首先&#xff0c;打开其官网-跑马灯案例 跑马灯代码&#xff1a; <el-carousel :interval"5000" arrow"always"><el-carousel-item v-for"…

python+pygame+opencv+gpt实现虚拟数字人直播(一)

AI技术突飞猛进&#xff0c;不断的改变着人们的工作和生活。数字人直播作为新兴形式&#xff0c;必将成为未来趋势&#xff0c;具有巨大的、广阔的、惊人的市场前景。它将不断融合创新技术和跨界合作&#xff0c;提供更具个性化和多样化的互动体验&#xff0c;成为未来的一种趋…

Linux 安全 - SUID机制

文章目录 一、文件权限位二、SUID简介 一、文件权限位 &#xff08;1&#xff09; $ ls -l text.txt -rw-rw-r-- 1 yl yl 0 Sep 28 16:25 text.txt其中第一个字段-rw-rw-r–&#xff0c;我们可以把它分为四部分看&#xff1a; -rw-rw-r--&#xff08;1&#xff09;- &a…

服务器文件备份

服务器上&#xff0c;做好跟应用程序有关的文件备份&#xff08;一般备份到远程的盘符&#xff09;&#xff0c;有助于当服务器发生硬件等故障时&#xff0c;可以对系统进行进行快速恢复。 下面以Windows服务器为例&#xff0c;记录如何做文件的备份操作。 具体操作如下&#…

day 10.4

服务器 头文件 #ifndef WIDGET_H #define WIDGET_H#include <QWidget> #include <QLine> #include <QTcpServer> #include <QTcpSocket> #include <QMessageBox>QT_BEGIN_NAMESPACE namespace Ui { class Widget; } QT_END_NAMESPACEclass Wid…

解决dockerfile创建镜像时pip install报错的bug

项目场景&#xff1a; 使用docker-compose创建django容器 问题描述 > [5/5] RUN /bin/bash -c source ~/.bashrc && python3 -m pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple: 0.954 Looking in indexes: https://…

Folium笔记:HeatMap

在地图上生成热力图 0 举例 import folium from folium.plugins import HeatMap# 创建一个地图对象 m folium.Map(location(1.34084, 103.83637), zoom_start13)# 创建一个坐标点的数据集 data [(1.431656, 103.827896),(1.424789, 103.789902),(1.325781, 103.860446),(1.…

web漏洞-PHP反序列化

目录 PHP反序列化序列化反序列化原理涉及技术利用危害CTF靶场 PHP反序列化 序列化 将对象转换成字符串 反序列化 相反&#xff0c;将字符串转换成对象。 数据格式的转换对象的序列化有利于对象的保存和传输&#xff0c;也可以让多个文件共享对象。 原理 未对用户输入的序列化字…

JVM篇---第二篇

系列文章目录 文章目录 系列文章目录一、简述一下JVM的内存模型二、说说堆和栈的区别三、什么时候会触发FullGC一、简述一下JVM的内存模型 1.JVM内存模型简介 JVM定义了不同运行时数据区,他们是用来执行应用程序的。某些区域随着JVM启动及销毁,另外一 些区域的数据是线程性独…

用稳定扩散生成4K PBR纹理【SDXL】

我正在继续去年开始使用 Three.JS 构建 3D 场景和草图的工作。 当时&#xff0c;DALL-E 和 Stable Diffusion 等 AI 图像生成器刚刚真正起飞。 我成功地在本地运行稳定扩散&#xff0c;并使用它为我正在构建的 3D 世界中的地形、建筑物和其他环境生成纹理。 当时我使用的是稳…

解决每次重启ganache虚拟环境,十个账号秘钥都会改变问题

很多时候 我们启动一个 ganache 环境 然后 通过私钥 在 MetaMask 中 导入用户 但是 当我们因为 电脑要关机呀 或者 ETH 消耗没了呀 那我们就不得不重启一个ganache虚拟环境 然后 你在切一下网络 让它刷新一下 你就会发现 上一次导入的用户就没有了 这是因为 你每次 ganache…

第2篇 机器学习基础 —(1)机器学习方式及分类、回归

前言&#xff1a;Hello大家好&#xff0c;我是小哥谈。机器学习是一种人工智能的分支&#xff0c;它使用算法和数学模型来使计算机系统能够从经验数据中学习和改进&#xff0c;而无需显式地编程。机器学习的目标是通过从数据中发现模式和规律&#xff0c;从而使计算机能够自动进…

React封装自定义表单校验方法

一、表单校验 为什么要封装自定义表单校验方法&#xff0c;因为在后台管理系统中&#xff0c;通常我们会涉及到用户的添加或则信息的修改&#xff0c;这时候通常就涉及表单的相关校验。但通常一个系统中的表单校验针对同一个字段来说是统一的。因此我们就需要将对应的校验字段的…

STM32复习笔记(五):FSMC连接外部SRAM

目录 Preface&#xff1a; &#xff08;一&#xff09;原理相关 &#xff08;二&#xff09;CUBEMX配置 &#xff08;三&#xff09;轮询方式读写 &#xff08;四&#xff09;DMA方式读写 Preface&#xff1a; STM32F4有一个FSMC&#xff08;Flexible Static Memory Contr…