当前位置: 首页 > news >正文

YOLOv12:目标检测新时代的破局者

目录

  • 一、YOLOv12 横空出世
  • 二、YOLOv12 的性能飞跃
    • 2.1 多规模优势
    • 2.2 对比超越
  • 三、技术创新与原理剖析
    • 3.1 区域注意力模块(Area Attention,A2)
    • 3.2 残差高效层聚合网络(R-ELAN)
    • 3.3 架构优化细节
  • 四、实验验证与结果分析
    • 4.1 消融实验
    • 4.2 速度比较
  • 五、应用前景与发展趋势
    • 5.1 应用领域拓展
    • 5.2 未来发展方向
  • 六、总结与展望


一、YOLOv12 横空出世

在计算机视觉领域,目标检测一直是研究的重点与热点,而 YOLO(You Only Look Once)系列模型无疑是其中的璀璨明星。自 2015 年 YOLOv1 诞生以来,YOLO 系列便凭借其独特的单阶段检测架构和端到端的设计理念,在实时目标检测任务中崭露头角,以快速的推理速度和较高的检测精度,广泛应用于自动驾驶、安防监控、工业检测等众多领域,深受研究者和开发者的青睐 ,在 GitHub 上收获了极高的关注度,其代码被大量的项目所借鉴和使用。

在过去的几年中,YOLO 系列不断推陈出新,从 YOLOv2 到 YOLOv11,每一个版本都在性能、精度或速度上取得了显著的提升,持续引领着目标检测技术的发展潮流。就在大家对 YOLO 系列的下一次突破满怀期待之时,YOLOv12低调发布,瞬间在计算机视觉领域掀起了一阵热议浪潮,吸引了全球无数目光聚焦于此。它的出现,犹如一颗重磅炸弹,打破了人们对现有目标检测技术的认知局限,为该领域带来了全新的变革与希望。

二、YOLOv12 的性能飞跃

2.1 多规模优势

YOLOv12 为了满足不同场景下的多样化需求,精心打造了 5 种不同规模的模型,分别是 YOLOv12-N、S、M、L 和 X 。这种多规模的设计策略,犹如为开发者提供了一套功能强大且灵活多变的 “工具箱”,使得他们能够根据具体任务的复杂程度、硬件资源的限制以及对检测精度和速度的不同要求,精准地挑选出最适配的模型。

以 YOLOv12-N 这个小巧玲珑的模型为例,在 T4 GPU 上,它展现出了令人惊叹的高效性能。其推理延迟仅仅只有 1.64ms,却能达到 40.6% 的 mAP。与先进的 YOLOv10-N 相比,mAP 提升了 2.1%,相较于 YOLOv11-N,mAP 也高出了 1.2%,而在速度方面,却与它们相当甚至更胜一筹。这就意味着,在对检测速度要求极高,同时又希望能保证一定检测精度的场景中,如一些对实时性响应要求苛刻的小型智能设备上的目标检测任务,YOLOv12-N 能够以更快的速度处理图像,同时准确地识别出目标物体,大大提高了系统的整体运行效率。

再看 YOLOv12-S,在面对复杂的检测任务时,它同样表现出色。与改进 DETR 的端到端实时检测器 RT-DETR-R18/RT-DETRv2-R18 相比,YOLOv12-S 的速度提升了 42%,而 mAP 分别高出 1.5%/1.1%。不仅如此,YOLOv12-S 仅使用了 36% 的计算量和 45% 的参数,这充分展示了它在计算资源利用上的高效性。这使得在一些计算资源有限,但又需要进行较为准确的目标检测的场景中,如移动设备上的图像识别应用,YOLOv12-S 能够在节省计算资源的同时,提供更快速、更准确的检测结果。

对于大型模型 YOLOv12-X,它在处理大规模数据和更复杂的任务时,展现出了卓越的性能。在一些对检测精度要求极高,同时又有足够硬件资源支持的场景中,如大型安防监控系统中的视频分析任务,YOLOv12-X 能够凭借其强大的模型能力,准确地检测出各种复杂场景下的目标物体,为安防监控提供可靠的技术支持 。

2.2 对比超越

为了更直观地展现 YOLOv12 的卓越性能,我们将其与其他流行的检测器,如 YOLO 系列旧版本、RT-DETR 等,在 COCO 数据集上进行了详细的性能对比。COCO 数据集作为目标检测领域中广泛使用且极具权威性的数据集,涵盖了丰富多样的物体类别和复杂多变的场景,能够全面、准确地评估模型的性能表现。

在与 YOLO 系列旧版本的对比中,YOLOv12 在各个指标上都实现了全面超越。以 YOLOv11 为例,在相同的计算资源和测试条件下,YOLOv12-N 的 mAP 比 YOLOv11-N 高出 1.2%,推理速度也更快;YOLOv12-S 的 mAP 比 YOLOv11-S 高出 1.1%,同时在推理速度上也有显著提升。这表明 YOLOv12 在检测精度和速度上都取得了实质性的突破,能够为用户提供更优质的检测服务。

与基于 DETR 改进的端到端实时检测器 RT-DETR 相比,YOLOv12 的优势同样明显。在 COCO 数据集的测试中,YOLOv12-S 比 RT-DETR-R18 快 42%,仅使用 36% 的计算和 45% 的参数,而 mAP 却高出 1.5%;与 RT-DETRv2-R18 相比,YOLOv12-S 同样在速度上快 42%,mAP 高出 1.1%。这充分证明了 YOLOv12 在模型效率和检测精度上的优越性,打破了以往人们对基于注意力机制模型在速度和精度难以平衡的认知。

通过这些详细的对比分析可以清晰地看到,YOLOv12 在速度和精度上实现了完美的平衡,全面超越了其他流行的检测器,为实时目标检测任务树立了新的标杆,为该领域的发展注入了强大的动力。

三、技术创新与原理剖析

3.1 区域注意力模块(Area Attention,A2)

在深入探讨 YOLOv12 的技术创新之前,我们先来回顾一下传统自注意力机制的工作原理。传统自注意力机制在计算注意力分数时,需要对特征图中的每个位置与其他所有位置进行相似度计算,这使得其计算复杂度与输入序列长度呈二次关系 。随着输入分辨率的提高,计算量会急剧增加,导致在实时目标检测任务中,计算效率成为了严重的瓶颈 。以一个高分辨率的图像为例,其特征图中的位置数量众多,传统自注意力机制在处理这样的特征图时,需要进行大量的矩阵乘法和指数运算,这不仅消耗了大量的计算资源,还使得推理速度难以满足实时性的要求。

为了解决这一难题,YOLOv12 创新性地提出了区域注意力模块(Area Attention,A2) 。A2 模块的核心思想是通过简单的重塑操作,将特征图划分为纵向或横向的区域,每个区域的大小为 (H/l, W) 或 (H, W/l),其中 l 为分割数 。在实验中,默认分割数设为 4,这样虽然会使感受野缩小至原来的 1/4,但仍然能够覆盖足够的信息范围 。这种划分方式避免了传统局部注意力中显式的窗口划分操作,大大降低了计算复杂度 。在计算注意力分数时,只需要在每个区域内进行计算,而不需要对整个特征图进行全局计算,从而有效地减少了计算量。

通过这种巧妙的设计,A2 模块在保持大感受野的同时,显著提升了计算速度 。在实际应用中,A2 模块对性能的影响微乎其微,但却能使推理速度得到大幅提升 。在一些对实时性要求极高的场景中,如自动驾驶中的实时目标检测,A2 模块能够在保证检测精度的前提下,快速地处理大量的图像数据,为车辆的安全行驶提供及时准确的信息。

3.2 残差高效层聚合网络(R-ELAN)

传统的 ELAN(高效层聚合网络)在目标检测任务中发挥了重要作用,它通过有效地聚合不同层的特征信息,提升了模型对目标特征的学习能力 。然而,在实际的优化过程中,传统 ELAN 也暴露出了一些问题 。当模型规模较大,参数量增加时,传统 ELAN 容易出现梯度阻塞的情况,导致梯度难以有效地传播,从而使模型的训练变得不稳定,收敛困难 。这就好比在一条交通繁忙的道路上,车辆过多导致交通堵塞,信息无法顺畅地流动。

为了解决这些问题,YOLOv12 引入了残差高效层聚合网络(R-ELAN) 。R-ELAN 在原始 ELAN 的基础上进行了两项关键改进 。首先,它在整个 block 内引入了从输入到输出的残差连接,并结合缩放因子(默认 0.01),这一设计就像是为梯度传播开辟了一条 “绿色通道”,能够有效地稳定训练过程,优化梯度流动,使梯度能够更加顺畅地在网络中传播 。其次,R-ELAN 重新设计了特征聚合方法,采用了瓶颈结构 。通过一个过渡层来调整通道维度,生成单一的特征图,然后该特征图通过后续块进行处理,接着进行连接,形成瓶颈结构 。这种新的聚合方法简化了计算流程,减少了计算成本和显存占用,同时又保持了高效的特征融合能力。

通过这些改进,R-ELAN 显著提升了模型的优化稳定性和计算效率 。在处理大规模模型时,R-ELAN 能够使模型更好地收敛,并且在保证性能的同时,提升推理速度 。在一些复杂的目标检测任务中,如对多种不同类型目标的检测,R-ELAN 能够帮助模型更快地学习到不同目标的特征,提高检测的准确性和效率。

3.3 架构优化细节

除了上述两个重要的创新模块,YOLOv12 还对整体架构进行了一系列细致的优化,以进一步提升模型的性能。

针对注意力机制内存访问操作低效的问题,YOLOv12 引入了 FlashAttention 。传统的注意力机制在计算过程中,需要频繁地访问内存,这导致了内存读写延迟较高,严重影响了计算效率。而 FlashAttention 通过优化内存访问模式,减少了内存读写次数,从而大大提高了计算效率 。它就像是一个高效的内存管理专家,能够合理地安排内存的使用,避免了内存访问的瓶颈。

在 Transformer 架构中,MLP(多层感知机)比率是一个重要的超参数,它决定了前馈网络的计算量 。在 YOLOv12 中,将 MLP 比率从传统的 4 降至 1.2,这样的调整更加合理地分配了注意力机制和前馈网络的计算开销,使得模型在保持性能的同时,能够更加高效地运行 。就好比在一个项目中,合理地分配人力和物力资源,能够提高项目的执行效率。

位置编码在传统的基于注意力的架构中是一个常见的组件,它用于为模型提供位置信息 。在 YOLOv12 中,经过实验验证,移除位置编码并不会对模型性能产生负面影响,反而能够简化模型结构,减少冗余计算,提升模型的运行效率 。这就像是在一个机器中,去除一些不必要的零件,不仅不会影响机器的正常运转,还能减轻机器的负担,使其运行更加顺畅。

为了增强模型对位置信息的感知能力,YOLOv12 引入了 7x7 大卷积核 。大卷积核能够捕捉到更大范围的上下文信息,从而帮助区域注意力更好地感知位置信息,提升模型对目标的定位和检测能力 。在一些复杂的场景中,大卷积核能够帮助模型更好地理解目标物体的位置和周围环境的关系,提高检测的准确性。

四、实验验证与结果分析

4.1 消融实验

为了深入探究区域注意力模块(A2)和残差高效层聚合网络(R-ELAN)对 YOLOv12 性能的具体影响,我们精心设计并开展了一系列严谨的消融实验。

对于区域注意力模块,我们选取了 YOLOv12-N、S、X 这三种具有代表性的模型规模进行实验评估。在实验过程中,我们分别测量了模型在 GPU(CUDA)和 CPU 上的推理速度,以此来全面评估该模块对不同硬件环境下模型性能的影响。以在 RTX 3080 上使用 FP32 精度进行推理的 YOLOv12-N 模型为例,当引入区域注意力模块后,其推理时间显著减少了 0.7ms。这一性能提升并非偶然,在不同的模型规模以及不同的硬件配置环境中,都得到了一致且稳定的体现。这充分表明,区域注意力模块能够有效地降低模型的计算复杂度,从而显著提升推理速度,在保证检测精度的同时,满足了实时性要求较高的应用场景需求。

针对 R-ELAN,我们选择了 YOLOv12-N、L、X 模型来评估其有效性。实验结果显示,对于像 YOLOv12-N 这样的小模型,残差连接虽然不会对模型的收敛过程产生明显影响,但却会在一定程度上降低模型的性能。这可能是因为小模型本身的复杂度较低,额外的残差连接带来了一些不必要的计算开销。然而,对于较大规模的模型,如 YOLOv12-L 和 YOLOv12-X,残差连接则发挥了至关重要的作用,它们对于稳定模型的训练过程起着不可或缺的作用。特别是在 YOLOv12-X 模型中,需要设置最小缩放因子为 0.01,才能确保模型能够顺利收敛。此外,R-ELAN 的特征集成方法有效地降低了模型在 FLOP(浮点运算次数)和参数方面的复杂性,在保持模型性能仅有轻微下降的前提下,极大地提高了模型的计算效率,使得模型在处理大规模数据和复杂任务时更加稳定和高效。

通过这一系列消融实验,我们清晰地揭示了区域注意力模块和 R-ELAN 对 YOLOv12 模型性能的具体影响机制,为模型的进一步优化和应用提供了有力的实验依据。

4.2 速度比较

在实际应用中,模型的推理速度是衡量其性能的关键指标之一。为了全面评估 YOLOv12 在不同硬件环境下的推理速度表现,我们对其与其他版本的 YOLO 模型,包括 YOLOv9、YOLOv10、YOLOv11,在 RTX 3080、RTX A5000 和 RTX A6000 这三种不同的 GPU 上,分别以 FP32 和 FP16 精度进行了详细的推理速度比较分析。

在 RTX 3080 GPU 上,YOLOv9 的推理速度为 2.4 毫秒(FP32)和 1.5 毫秒(FP16),而 YOLOv12-N 则展现出了更出色的性能,实现了 1.7 毫秒(FP32)和 1.1ms(FP16)的推理延迟。这表明在相同的硬件条件下,YOLOv12-N 在推理速度上相较于 YOLOv9 有了显著的提升,无论是在 FP32 还是 FP16 精度下,都能够更快地完成目标检测任务。

在 RTX A5000 和 RTX A6000 GPU 上,也呈现出了类似的趋势。YOLOv12 在不同精度下的推理速度均优于或与其他版本的 YOLO 模型相当,且在某些情况下,优势更为明显。这种在不同 GPU 上的一致性表现,充分证明了 YOLOv12 在推理速度方面的卓越性能,以及其对不同硬件环境的良好适应性。

通过绘制详细的速度对比图表,我们可以更加直观地看到不同模型在不同 GPU 和精度下的推理速度差异。从图表中可以清晰地看出,YOLOv12 在速度性能上处于领先地位,为其在实际应用中的广泛部署提供了坚实的技术保障。无论是在对实时性要求极高的安防监控领域,还是在资源有限的边缘计算设备上,YOLOv12 都能够凭借其快速的推理速度,为用户提供高效、准确的目标检测服务。

五、应用前景与发展趋势

5.1 应用领域拓展

随着人工智能技术的飞速发展,目标检测技术在各个领域的应用需求日益增长。YOLOv12 凭借其卓越的性能,在多个领域展现出了巨大的应用潜力。

在安防监控领域,YOLOv12 的实时性和高精度能够对监控画面中的人物、车辆、异常行为等进行快速准确的检测和识别 。在公共场所的监控中,它可以实时监测人群的聚集情况,一旦发现异常聚集,立即发出警报,为安保人员提供及时的信息,有效预防安全事故的发生 。在交通监控中,YOLOv12 能够准确识别车辆的类型、车牌号码,以及车辆的行驶状态,如是否超速、违规变道等,为交通管理提供有力的数据支持。

在自动驾驶领域,目标检测是实现自动驾驶的关键技术之一 。YOLOv12 能够快速准确地检测出道路上的车辆、行人、交通标志和信号灯等目标,为自动驾驶系统提供实时的环境信息,帮助车辆做出合理的决策,如加速、减速、转弯等 。其高效的检测速度和高准确率,能够大大提高自动驾驶的安全性和可靠性,为自动驾驶技术的普及和应用奠定坚实的基础。

在工业检测领域,YOLOv12 可以用于检测工业产品的缺陷、质量问题,以及生产设备的运行状态 。在电子产品制造中,它可以检测电路板上的元件是否缺失、焊接是否良好等;在机械制造中,能够检测零部件的尺寸是否符合标准、表面是否有裂纹等 。通过实时检测和预警,YOLOv12 能够帮助企业及时发现生产过程中的问题,提高产品质量,降低生产成本。

在智能零售领域,YOLOv12 可以实现商品的自动识别和计数,帮助商家进行库存管理和销售分析 。在超市的货架上,它可以实时监测商品的摆放情况,当发现商品缺货时,及时通知工作人员补货;在收银台,能够快速识别商品,实现自助结账,提高购物效率 。此外,YOLOv12 还可以用于分析顾客的行为和偏好,为商家提供精准的营销策略。

5.2 未来发展方向

基于 YOLOv12 的创新点,我们可以对其未来的发展方向进行大胆的展望。

在模型优化方面,未来的研究可能会进一步降低模型的计算复杂度,提高模型的运行效率,使其能够在资源有限的设备上更好地运行 。同时,通过改进训练算法和数据增强技术,提高模型的泛化能力和鲁棒性,使其能够适应更加复杂多变的场景 。还可以探索如何更好地利用无监督学习和半监督学习技术,减少对大规模标注数据的依赖,降低模型的训练成本。

在与其他技术融合方面,YOLOv12 有望与语义分割、实例分割等技术相结合,实现更全面、更精细的目标理解和分析 。将 YOLOv12 与语义分割技术相结合,可以在检测目标的同时,对目标的语义信息进行分割和理解,为后续的决策提供更丰富的信息 。此外,随着物联网技术的发展,YOLOv12 可以与传感器技术相结合,实现多模态数据的融合和分析,进一步提升目标检测的准确性和可靠性。

随着人工智能技术的不断发展和应用场景的不断拓展,YOLOv12 必将在未来的计算机视觉领域发挥更加重要的作用,为各个行业的智能化发展提供强大的技术支持。

六、总结与展望

YOLOv12 的出现,无疑是目标检测领域的一次重大飞跃。它通过引入区域注意力模块(A2)、残差高效层聚合网络(R-ELAN)以及一系列架构优化措施,成功地将注意力机制融入到实时目标检测框架中,在保持快速推理速度的同时,显著提升了检测精度,全面超越了其他流行的实时目标检测器,为该领域树立了新的标杆。

YOLOv12 的多规模模型设计,为不同应用场景提供了更加灵活的选择,无论是在对速度要求极高的小型设备上,还是在对精度要求苛刻的大型系统中,都能发挥出色的性能 。其在安防监控、自动驾驶、工业检测、智能零售等多个领域展现出的巨大应用潜力,预示着它将在未来的智能化发展中扮演重要角色。

尽管 YOLOv12 已经取得了令人瞩目的成绩,但目标检测领域的发展永无止境。未来,我们期待 YOLOv12 能够在模型优化、与其他技术融合等方面继续取得突破,进一步降低计算复杂度,提高模型的泛化能力和鲁棒性,拓展更多的应用场景 。相信在不断的创新和发展中,YOLOv12 将为计算机视觉领域带来更多的惊喜,推动整个行业迈向新的高度。

相关文章:

YOLOv12:目标检测新时代的破局者

目录 一、YOLOv12 横空出世二、YOLOv12 的性能飞跃2.1 多规模优势2.2 对比超越 三、技术创新与原理剖析3.1 区域注意力模块(Area Attention,A2)3.2 残差高效层聚合网络(R-ELAN)3.3 架构优化细节 四、实验验证与结果分析…...

网络安全法与等级保护 PPT 精华汇总

资源描述 本资源文件为《网络安全法与等级保护》的PPT精华汇总,内容涵盖了网络安全法与等级保护的总体框架及相关标准规范。该PPT详细介绍了网络安全法与等级保护的各个章节和条款,并提供了基础类和应用类的相关标准文件,帮助读者全面了解和…...

coze生成的工作流,发布后,利用cmd命令行执行。可以定时发日报,周报等。让他总结你飞书里面的表格。都可以

coze生成的工作流,发布后,利用cmd命令行执行。可以定时发日报,周报等。让他总结你飞书里面的表格。都可以。 很简单。 准备工作,先发布你的工作流,和发布应用。 然后,点击扣子API 。 申请一个&#xff0…...

K8S学习之基础六:k8s中pod亲和性

Pod节点亲和性和反亲和性 podaffinity:pod节点亲和性指的是pod会被调度到更趋近与哪个pod或哪类pod。 podunaffinity:pod节点反亲和性指的是pod会被调度到远离哪个pod或哪类pod 1. Pod节点亲和性 requiredDuringSchedulingIgnoredDuringExecution&am…...

从统计学视角看机器学习的训练与推理

从统计学视角看机器学习的训练与推理 目录 引言:统计学与机器学习的奇妙缘分训练与推理:你得先学会“看数据”再“用数据”最大似然估计(MLE):从直觉到数学证明 3.1 伯努利分布的MLE3.2 单变量高斯分布的MLE3.3 多元…...

《论数据分片技术及其应用》审题技巧 - 系统架构设计师

论数据分片技术及其应用写作框架 一、考点概述 本论题“论数据分片技术及其应用”主要考察的是软件工程中数据分片技术的理解、应用及其实际效果分析。考点涵盖以下几个方面: 首先,考生需对数据分片的基本概念有清晰的认识,理解数据分片是…...

【鸿蒙Next】鸿蒙与flutter使用自定义iconfont的ttf字体库对比总结

ttf的iconfont库如何获取 1、自己创建 第一步、 iconfont-阿里巴巴矢量图标库 打开网址 第二步、搜索自己的需要的图标、并且加购到购物车 第三步、点击购物车,添加至项目 第四步、添加至项目或者新建项目再添加 第五步、下载至本地 就得到了ttf文件 2、设计…...

Redis实战篇《黑马点评》8 附近商铺

8.附近商户 8.1GEO数据结构的基本用法 GEO就是Geolocation的简写形式,代表地理坐标。Redis在3.2版本中加入了对GEO的支持,允许存储地理坐标信息,帮助我们根据经纬度来检索数据,常见的命令有 GEOADD:添加一个地理空间…...

【大厂AI实践】美团:美团智能客服核心技术与实践

【大厂AI实践】美团:美团智能客服核心技术与实践 🌟 嗨,你好,我是 青松 ! 🌈 自小刺头深草里,而今渐觉出蓬蒿。 NLP Github 项目推荐: 【AI 藏经阁】:https://gitee.com…...

标签的ref属性 vue中为什么不用id标记标签

标签的ref属性 vue中为什么不用id标记标签 假设有一对父子组件,如果父组件和子组件中存在id相同的标签,会产生冲突。通过id获取标签会获取到先加载那个标签。 标签的ref属性的用法 在父组件App中,引入了子组件Person。 并使用ref标记了Pe…...

期权帮|股指期货3月合约交割该如何做?

锦鲤三三每日分享期权知识,帮助期权新手及时有效地掌握即市趋势与新资讯! 股指期货3月合约交割该如何做? 股指期货的交割日通常是合约到期月份的第三个星期五。 对于3月合约,若当月无特殊节假日,交割日就是3月的第三…...

Collab-Overcooked:专注于多智能体协作的语言模型基准测试平台

2025-02-27,由北京邮电大学和理想汽车公司联合创建。该平台基于《Overcooked-AI》游戏环境,设计了更具挑战性和实用性的交互任务,目的通过自然语言沟通促进多智能体协作。 一、研究背景 近年来,基于大型语言模型的智能体系统在复…...

[Computer Vision]实验七:图像检索

目录 一、实验内容 二、实验过程 2.1 准备数据集 2.2 SIFT特征提取 2.3 学习“视觉词典”(vision vocabulary) 2.4 建立图像索引并保存到数据库中 2.5 用一幅图像查询 三、实验小结 一、实验内容 实现基于颜色直方图、bag of word等方法的以图搜…...

访问控制列表(ACL)思科、华为

访问控制列表(ACL) 一、ACL的基本概念 随着网络的飞速发展,网络安全和网络服务质量QoS(Quality of Service)问题日益突出。 企业重要服务器资源被随意访问,企业机密信息容易泄露,造成安全隐患。…...

linux磁盘满了怎么安全删除文件

df -h 通过df -h /dir 查看被占满的目录,dir替换为你的文件目录 du -sh * 进入被占满的目录,执行 du -sh * ,查看哪些文件占的磁盘大 查看占用磁盘最大的文件 du -sh * | sort -rh | head -n N N通常可以设置为10 有的docker容器文件太…...

2025国家护网HVV高频面试题总结来了04(题目+回答)

网络安全领域各种资源,学习文档,以及工具分享、前沿信息分享、POC、EXP分享。不定期分享各种好玩的项目及好用的工具,欢迎关注。 一、HVV行动面试题分类 根据面试题的内容,我们将其分为以下几类: 漏洞利用与攻击技术 …...

jenkins使用插件在Build History打印基本信息

1、插件安装 分别是description setter plugin插件和user build vars插件,下面介绍一下这两个插件: description setter plugin:作用是在 Build 栏下方增加一个功能块,用于填写自定义信息,也就是 Build history 中需要显示的文字…...

线程池的工作流程

线程池的工作流程主要包括任务提交、线程分配、任务执行和线程回收等环节,以下是对其详细的描述: 任务提交 当有任务需要执行时,用户通过线程池提供的提交方法,如execute()或submit()方法,将任务(通常是实现…...

《深度学习实战》第4集:Transformer 架构与自然语言处理(NLP)

《深度学习实战》第4集:Transformer 架构与自然语言处理(NLP) 在自然语言处理(NLP)领域,Transformer 架构的出现彻底改变了传统的序列建模方法。它不仅成为现代 NLP 的核心,还推动了诸如 BERT、…...

vue下载插件

1.下载路由组件 npm i vue-router2.创建router文件夹 3.创建router.js文件 import {createRouter, createWebHistory} from "vue-router"let router createRouter({history: createWebHistory(),routes: [{path: "/",component: () > import(".…...

两周学习安排

日常安排 白天 看 MySQL实战45讲,每日一讲 看 图解设计模式 每天1-2道力扣算法题(难度中等以上) 每天复习昨天的单词,记20个单词,写一篇阅读 晚上 写服创项目 每日产出 MySQL实战45讲 读书笔记 设计模式 读书笔…...

蓝桥与力扣刷题(蓝桥 k倍区间)

题目:给定一个长度为 N 的数列,A1,A2,⋯AN​,如果其中一段连续的子序列 Ai,Ai1,⋯Aj( i≤j ) 之和是 K 的倍数,我们就称这个区间[i,j] 是 K 倍区间。 你能求出数列中总共有多少个 K 倍区间吗? 输入描述 第一行包含两…...

Spring项目-抽奖系统(实操项目-用户管理接口)(END)

^__^ (oo)\______ (__)\ )\/\ ||----w | || || 一:前言: 活动创建及展示博客链接:Spring项目-抽奖系统(实操项目-用户管理接口)(THREE)-CSDN博客 上一次完成了活动的创建和活动的展示,接下来就是重头戏—…...

5个GitHub热点开源项目!!

1.自托管 Moonlight 游戏串流服务:Sunshine 主语言:C,Star:14.4k,周增长:500 这是一个自托管的 Moonlight 游戏串流服务器端项目,支持所有 Moonlight 客户端。用户可以在自己电脑上搭建一个游戏…...

数据结构:二叉搜索树(排序树)

1.二叉搜索树的定义 二叉搜索树要么是空树,要么是满足以下特性的树 (1)左子树不为空,那么左子树左右节点的值都小于根节点的值 (2)右子树不为空,那么右子树左右节点的值都大于根节点的值 &#…...

JavaEE--计算机是如何工作的

一、一台计算机的组成部分 1.CPU(中央处理器) 2.主板(一个大插座) 3.内存(存储数据的主要模板) 4.硬盘(存储数据的主要模板) 内存和硬盘对比: 内存硬盘读写速度快慢存…...

Redis 实战篇 ——《黑马点评》(下)

《引言》 (下)篇将记录 Redis 实战篇 最后的一些学习内容,希望大家能够点赞、收藏支持一下 Thanks♪ (・ω・)ノ,谢谢大家。 传送门(上):Redis 实战篇 ——《黑马…...

OpenCV计算摄影学(10)将一组不同曝光的图像合并成一张高动态范围(HDR)图像的实现类cv::MergeDebevec

操作系统:ubuntu22.04 OpenCV版本:OpenCV4.9 IDE:Visual Studio Code 编程语言:C11 算法描述 resulting HDR 图像被计算为考虑了曝光值和相机响应的各次曝光的加权平均值。 cv::MergeDebevec 是 OpenCV 中用于将一组不同曝光的图像合并成一…...

Linux驱动开发之串口驱动移植

原理图 从上图可以看到RS232的串口接的是UART3,接下来我们需要使能UART3的收发功能。一般串口的驱动程序在内核中都有包含,我们配置使能适配即可。 设备树 复用功能配置 查看6ull如何进行uart3的串口复用配置: 设备树下添加uart3的串口复用…...

c语言中return 数字代表的含义

return 数字的含义:表示函数返回一个整数值,通常用于向调用者(如操作系统或其他程序)传递程序的执行状态或结果。 核心规则: return 0: 含义:表示程序或函数正常结束。 示例: int m…...

Android 端侧运行 LLM 框架 MNN 及其应用

MNN Chat Android App - 基于 MNN 引擎的智能聊天应用 一、MNN 框架简介与工作原理1.1 什么是 MNN?1.2 MNN 的工作原理 二、MNN Chat Android App2.1 MNN Chat 的功能2.2 MNN Chat 的优势2.3 MNN Chat Android App 的使用 三、总结 随着移动端人工智能需求的日益增长…...

jupyter汉化、修改默认路径详细讲解

1、配置镜像路径 修改第三方库的下载路径,比如:[清华镜像pypi](https://mirrors.tuna.tsinghua.edu.cn/help/pypi/),配置镜像地址。 首先执行 pip config set global.index-url https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple 2、安…...

java面试笔记(二)

1.流程中如何数据回填 (1)方法1: 在工作流中有一个标识,每一次审批的时候去判断是否审批完成,然后调用反射 (2)方法2: 创建一个流程结束的监听器,监听流程是否结束&a…...

【大语言模型笔记进阶一步】提示语设计学习笔记,跳出框架思维,自己构建提示词

一、大语言模型应用场景 1. 文本生成 文本创作: 诗歌故事,剧本,推文帖子 摘要与改写: 长文本摘要与简化,多语言翻译与本地化 结构化生成: 表格,根据需求生成代码片段,API文档生成…...

sql调优:优化响应时间(优化sql) ; 优化吞吐量

Sql性能调优的目的 1.优化响应时间>>优化sql 经过调优后,执行查询、更新等操作的时候,数据库的反应速度更快,花费的时间更少。 2.优化吞吐量 即“并发”, 就是“同时处理请求”的能力。 优化sql 尽量将多条SQL语句压缩到一句>…...

debian/control中的包关系

软件包依赖就是软件包关系的一种,一般用 Depends 表示。 每个软件包都可以和其他软件包有各种不同的关系。除 Depends 外,还有 Recommends、Suggests、Pre-Depends、Breaks、Conflicts、Provides 和 Replaces,软件包管理工具(如 …...

python学习第三天

条件判断 条件判断使用if、elif和else关键字。它们用于根据条件执行不同的代码块。 # 条件判断 age 18 if age < 18:print("你还是个孩子&#xff01;") elif age 18:print("永远十八岁&#xff01;") else:print("你还年轻&#xff01;")…...

k8s架构及服务详解

目录 1.1.容器是什么1.2.Namespace1.3.rootfs5.1.Service介绍5.1.1.Serice简介 5.1.1.1什么是Service5.1.1.2.Service的创建5.1.1.3.检测服务5.1.1.4.在运行的容器中远程执行命令 5.2.连接集群外部的服务 5.2.1.介绍服务endpoint5.2.2.手动配置服务的endpoint5.2.3.为外部服务…...

Unity中动态切换光照贴图LightProbe的方法

关键代码&#xff1a;LightmapSettings.lightmaps lightmapDatas; LightmapData中操作三张图&#xff1a;lightmapColor,lightmapDir,以及一张ShadowMap 这里只操作前两张&#xff1a; using UnityEngine; using UnityEngine.EventSystems; using UnityEngine.UI;public cl…...

基于Matlab的多目标粒子群优化

在复杂系统的设计、决策与优化问题中&#xff0c;常常需要同时兼顾多个相互冲突的目标&#xff0c;多目标粒子群优化&#xff08;MOPSO&#xff09;算法应运而生&#xff0c;作为群体智能优化算法家族中的重要成员&#xff0c;它为解决此类棘手难题提供了高效且富有创新性的解决…...

Android Studio 新版本Gradle发布本地Maven仓库示例

发布代码到JitPack示例&#xff1a;https://blog.csdn.net/loutengyuan/article/details/145938967 以下是基于 Android Studio 24.2.2&#xff08;Gradle 8.10.2 AGP 8.8.0 JDK17&#xff09; 的本地 Maven 仓库发布示例&#xff0c;包含aar和jar的不同配置&#xff1a; 1.…...

Langchain解锁LLM大语言模型的结构化输出能力(多种实现方案)

在 LangChain解锁LLM大语言模型的结构化输出能力&#xff1a;调用 with_structured_output() 方法 这篇博客中&#xff0c;我们了解了格式化LLM输出内容的必要性以及如何通过调用langchain框架中提供的 with_structured_output() 方法对LLM输出进行格式化&#xff08;三种可选方…...

深入理解Spring @Async:异步编程的利器与实战指南

一、为什么需要异步编程&#xff1f; 在现代高并发系统中&#xff0c;同步阻塞式编程会带来两大核心问题&#xff1a; // 同步处理示例 public void processOrder(Order order) {// 1. 保存订单&#xff08;耗时50ms&#xff09;orderRepository.save(order); // 2. 发送短信…...

让Word插上AI的翅膀:如何把DeepSeek装进Word

在日常办公中&#xff0c;微软的Word无疑是我们最常用的文字处理工具。无论是撰写报告、编辑文档&#xff0c;还是整理笔记&#xff0c;Word都能胜任。然而&#xff0c;随着AI技术的飞速发展&#xff0c;尤其是DeepSeek的出现&#xff0c;我们的文字编辑方式正在发生革命性的变…...

清华DeepSeek深度探索与进阶指南

「清华北大-Deepseek使用手册」 链接&#xff1a;https://pan.quark.cn/s/98782f7d61dc 「清华大学Deepseek整理&#xff09; 1&#xff0d;6版本链接&#xff1a;https://pan.quark.cn/s/72194e32428a AI学术工具公测链接:https://pan.baidu.com/s/104w_uBB2F42Da0qnk78_ew …...

迁移学习策略全景解析:从理论到产业落地的技术跃迁

&#xff08;2025年最新技术实践指南&#xff09; 一、迁移学习的范式革命与核心价值 在人工智能进入"大模型时代"的今天&#xff0c;迁移学习已成为突破数据瓶颈、降低训练成本的关键技术。本文基于2025年最新技术进展&#xff0c;系统梳理六大核心策略及其在产业实…...

WireGuard搭建网络,供整个公司使用

一、清理现有配置&#xff08;如已有失败尝试&#xff09; # 停止并删除现有 WireGuard 接口 sudo wg-quick down wg0 sudo rm -rf /etc/wireguard/wg0.conf# 验证接口已删除 (执行后应该看不到 wg0) ifconfig二、服务器端完整配置流程 1. 安装 WireGuard sudo apt update &…...

MyAgent:用AI开发AI,开启智能编程的产业革命

在人工智能技术爆发的2025年&#xff0c;‌MyAgent智能体平台‌凭借其独特的“AI开发AI”模式&#xff0c;正在重构全球软件开发行业的底层逻辑。这一创新范式不仅将自然语言处理、机器学习、RPA&#xff08;机器人流程自动化&#xff09;等技术深度融合&#xff0c;更通过‌“…...

Cherno C++ P60 为什么不用using namespace std

这篇文章我们讲一下之前写代码的时候的一个习惯&#xff0c;也就是不使用using namespace std。如果我们接触过最早的C教程&#xff0c;那么第一节课都会让我们写如下的代码&#xff1a; #include<iostream>using namespace std;int main() {cout << "Hello …...

el-select的下拉选择框插入el-checkbox

el-check注意这里要使用model-value绑定数据 <el-selectv-model"selectDevice"multiplecollapse-tags:multiple-limit"5"style"width: 200px"popper-class"select-popover-class" ><el-optionv-for"item in deviceList…...