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

YOLOv12 改进有效系列目录 - 包含卷积、主干、检测头、注意力机制、Neck上百种创新机制 - 针对多尺度、小目标、遮挡、复杂环境、噪声等问题!

🔥 在 YOLO 系列一路狂飙之后,YOLOv12 带来了令人耳目一新的范式转变——它不再以 CNN 为绝对核心,而是首次 围绕注意力机制构建 YOLO 框架,在保证实时性的前提下,将检测精度再次推向新高度!

为了进一步探索其性能潜力,我在 YOLOv12 的基础上进行了系统性改进与重构,涉及特征提取、注意力机制、特征融合、结构连接、检测头设计等多个维度,总计超过一百多种优化点。本专栏将对这些模块进行逐一拆解与分享。

🎯 现实目标检测场景中仍面临的关键挑战

尽管当前目标检测算法已趋于成熟,但在下列典型场景中,检测器性能仍表现出显著不足:

1. 多尺度目标混合

现实世界中的目标尺寸跨度极大,小至远处行人、交通标志,大至近距离车辆、机械设备。现有模型在跨尺度泛化能力上仍有缺陷,大目标易截断,小目标常漏检,多尺度响应能力成为核心瓶颈。

列如遥感影像与农业监测任务中,目标尺寸跨度更为夸张:卫星图中一个房屋与一辆车的像素差距巨大,农田病虫害检测中虫体往往只占图像极小区域,对小目标表达能力提出了极高要求。

2. 遮挡与密集目标

在行人密集、交通拥堵、农作物交错种植、林区穿插目标等高遮挡场景中,目标间强遮挡带来极大检测难度,现有模型在遮挡下常出现 误检、错分或重叠识别失败,缺乏有效的上下文建模与空间解耦策略。

3. 小目标识别困难

在高空监控、遥感影像、夜间拍摄、医疗成像等任务中,小目标尺寸可能仅占图像极小区域,现有模型存在特征表达不足、语义信息缺失问题。尤其在轻量化部署下,小目标召回率大幅下降,成为实际落地的一大痛点。

4. 背景干扰与相似性误判

复杂背景(如森林、城市、农田、沙地)中,背景纹理复杂、伪目标干扰频发。模型常对高频背景或外观相似区域产生误判,说明当前特征表达能力对目标边界和上下文解耦仍不充分。

列如农业视觉任务中尤为明显,如病斑检测中健康叶片与病斑颜色相近,果实检测中果蔬与背景土壤同色,极易造成误判

5. 图像模糊与运动失焦

夜间低光、低质量摄像头、无人机动态拍摄等条件下,模糊图像会导致目标边界模糊、形状不清,模型对这类图像鲁棒性差,容易漏检或产生分类错误。

代码获取

https://github.com/tgf123/YOLOv8_improve/blob/master/YOLOV12.md

YOLOv8_improve/YOLOV12.md at master · tgf123/YOLOv8_improve

改进模块分类导航(持续更新)

1️⃣ Backbone结构优化

  • 使用自适应稀疏自注意力ASSA修改Backbone部分,减少噪声,增强Backbone遮挡、小目标特征

  • 在Backbone中添加卷积和注意力融合模块CAFM 利用注意力机制提取小目标和遮挡特征

  • 在Backbone中添加级联组注意力机制CGA,解决Bacbone(cnn)特征丢失的问题

  • 在Backbone中添加CMRF利用其级联策略挖掘特征信息并融合不同感受野的信息,提高多尺度检测能力。

  • 在Backbone中添加可变形交互注意力模块DIA-Module,提取全局上下文语义信息,增强上下文的联系。

  • 在Backbone中添加深度启动和通道注意力模块DICAM,提高朦胧水下低图像的质量、对比度和色偏的目标。

  • 在Backbone中添加双域条带注意力机制DSAM,提取空间和频率域的高效特征聚合特征,提高小目标、多尺度、遮挡、噪声中的检测精度。

  • 在Backbone中添加FFCM 应运而生,旨在通过融合频域特征,实现高效的全局建模,提高在噪声较多的背景中提高检测精度,同时增强边缘/纹理特征。

  • 在backbone中使用傅里叶变换+Transformer模块FSAS模块,提取待检测物体的边缘,纹理特征(边缘模糊、或者需要边缘特征的部分)。

  • 在backbone中添加HaloAttention注意力机制,增强多尺度特征,提取多尺度特征。

  • 在Backbone中添加HSMSSD,过将通道混合操作从输入特征空间转移到压缩的隐状态空间,保持轻量化的同时,融合高低层特征,提升模型表示能力。

  • 在backbone部分插入HTB,提取解决恶劣天气中待检测目标的特征。

  • 在backbone部分插入多分支卷积IDC,提取多尺度特征。

  • 在backbone部分插入曼哈顿自注意力机制Manhattan_SelfAttention构建一种具有明确空间先验且能有效处理全局信息的通用视觉骨干网络,提取遮挡、小目标特征。

  • 在backbone部分插入多维协作注意力MCAM,从通道、高度、宽度三个维度的协同建模,动态捕捉关键特征。

  • 在backbone部分插入频率多尺度注意力MFMSAttentionBlock,从多尺度和多频率信息方面提取特征,提高多尺度、小目标。

  • 添加混合结构模块MixStructure融合多尺度特征与混合注意力机制,实现全局去噪与局部细节恢复的平衡,提高小目标检测能力,增强细节特征。

  • 在backbone部分插入多尺度大核注意力MLKA,通过结合大核分解与多尺度学习提取多尺度特征。

  • 利用MSAA对backbone的特征进行细化处理。通过空间和通道两个路径的操作,增强了空间和通道方面的特征信息,提取多尺度特征。

  • 在nebackbonek部分插入量化脉冲驱动的自注意力机制MSAR,提高对小目标、遮挡的关注。

  • 在backbone引入多尺度卷积注意力模块MSCAM通过 CAB、SAB 和 MSCB 三个子模块协同工作,提取多尺度特征,增强对遮挡目标关注。

  • 在backbone部分插入多尺度前馈网络MSFN,增强backbone的多尺度特征提取能力。

  • 引入非局部注意力机制Non_Local,通过在全局范围内捕捉特征图中所有位置的相互关系,提升模型性能,增强小目标、遮挡检测/

  • 引入自集成注意力机制SEAM通过多视角特征融合和一致性正则化来增强模型的鲁棒性和泛化能力,特别适用于处理遮挡问题和多尺度特征融合问题

  • 在backbone部分插入单头自注意力SHSA,结合全局上下文信息,提高对遮挡、小目标关注。

  • 在backbone部分插入稀疏自注意力机制Sparse_Self_Attention,解决YOLO11因自注意力机制Backbone过分关注语义信息的问题。

  • 在Backbone部分插入混洗注意力模块SSAttention,旨在更好地聚合不同扫描方向得到的序列,充分利用互补信息,增强全局特征。

  • 在Backbone部分插入令牌统计自注意力TSSA,通过对令牌特征二阶矩统计分析,精准聚焦目标区域,提高提高多尺度 遮挡。

2️⃣ Backbone替换

  • 引入MobileNetV4替换backbone,平衡精度与效率

  • 引入Swin Transformer替换backbone,利用自注意力机制获取上下文信息

  • 引入ShuffleNet v1替换backbone,实现轻量化

  • 引入ShuffleNet v2替换backbone,实现轻量化

  • 引入OverLoCK替换YOLO backbone 融合自上而下注意力机制,实现高效的长程依赖建模与局部细节捕捉,同时平衡计算复杂度与性能

  • 引入TransXNet替换YOLO backbone 学习全局和局部动态信息,提高检测精度

  • 引入基于星运算(element-wise multiplication)的高效神经网络模型StarNet替换backbone

  • 使用MobileMamba替换YOLO backbone 提高检测精度

3️⃣ 特征融合改进 concat

  • 引入跨尺度选择性融合模块CSFblock 解决不同分辨率特征融合的问题

  • 引入动态特征融合DFF模块,通过动态机制在融合过程中选择重要特征,以解决上述现有技术在特征融合方面的不足。

  • EFC 模块通过增强层间特征相关性来优化特征融合。解决卷积神经网络特征提取时易出现特征消失问题,以及传统特征金字塔网络(FPN)的融合方法,如简单拼接或相加操作,无法充分利用多尺度融合优势,不同层特征相关性弱,融合后易产生冗余特征。

  • 引入多尺度差异融合模块MDFM,解决不同尺度特征融合时的差异问题。

  • 引入调制融合模块MFM 动态融合不同层的特征,增强检测精度

4️⃣ Neck部分改进

  • 使用自适应稀疏自注意力ASSA修改Neck部分,减少噪声,提高neck层对遮挡、小目标的感知能力

  • 在Neck中添加可变形交互注意力模块DIA-Module,增强模型对不同变化物体的关注能力。

  • 将使用傅里叶变换+Transformer模块FSAS插入到neck部分,增强neck部分的边缘信息

  • 在Neck中添加HaloAttention注意力机制,增强多尺度特征,能有效处理不同尺度对象,提升对多尺度目标的关注能力。

  • 引入分层互补注意力混合器HRAMI,旨在弥补Neck层下采样特征导致的像素级信息损失,同时利用语义级信息,保持高效的层次结构,提高检测精度。

  • 在neck部分插入HTB,利用动态范围直方图自注意力(DHSA)和双尺度门控前馈网络(DGFF)解决恶劣天气中待检测目标难的问题。

  • 在neck部分插入曼哈顿自注意力机制Manhattan_SelfAttention提高对待检测目标的关注。

  • 在neck部分插入频率多尺度注意力MFMSAttentionBlock,解决低分辨率特征图上采样到高分辨率时,容易导致信息损失问题。

  • 在neck部分插入量化脉冲驱动的自注意力机制MSAR,提高对小目标、遮挡的关注。

  • neck部分插入单头自注意力SHSA,提高对遮挡、小目标关注。

  • 在neck部分插入稀疏自注意力机制Sparse_Self_Attention,平衡对语义和非语义特征的提取,提高在目标定位任务中的表现 。

  • 在neck部分插入混洗注意力模块SSAttention,旨在更好地聚合不同扫描方向得到的序列,充分利用互补信息,增强全局信息。

  • 在neck部分插入令牌统计自注意力TSSA,通过对令牌特征二阶矩统计分析,精准聚焦目标区域,提高检测精度。

5️⃣ C3K2模块改进

  • 使用AFE_Block修改C3K2模块,提高复杂场景中的检测精度

  • 使用风车卷积APConv 修改C3K2模块,提升红外小目标的检测能力(其他小目标也可以)

  • 在C3K2模块中添加卷积加法自注意力机制CASelf_Attention,使用全群信息缓解CNN带来的细节特征丢失的问题。

  • 在C3K2模块中添加通道混合器 CGLU利用门控机制提高复杂场景中的检测精度(小目标、遮挡、多尺度)

  • 使用CMUNeXt改进C3K2模块,利用大核深度可分离卷积提取全局信息,同时保持轻量化,解决遮挡小目标问题。 

  • 使用上下文引导模块ContextGuided改进C3K2,利用并行空洞卷积,提取全局和局部特征,提前高小目标/多尺度检测能力

  • 利用卷积调制ConvMod改进C3K2,有着自注意力机制的能力,但比其更加轻量化,解决多尺度、小目标问题

  • 使用通道压缩的自注意力机制CRA改进C3K2,提取全局信息,解决CNN特征丢失的问题

  • DCT(离散余弦变换)是一种将图像从像素域转换到频率域的数学方法,可分离出高频(细节纹理)和低频(整体结构)成分,提升待检测目标的定位模型对微观和宏观信息的捕捉能力。

  • 在C3K2模块中添加DLKA_Attention模块,利用其可变形的大核设计,自适应地捕捉不同形状和尺寸的对象特征,适用于遮挡,形状各异的目标

  • 在C3K2模块中添加双域条带注意力机制DSAM,旨在通过空间和频率域的高效特征聚合提高小目标、多尺度、遮挡、噪声中的检测精度。

  • 在C3K2模块引入轻量级深度神经网络的卷积核Dual结合了组卷积(GroupConv)和异构卷积(HetConv)的优势降低参数量

  • 在C3K2模块引入EGA模块是 LEGNet 中用于处理低质量遥感图像的核心模块,有效解决遥感图像中对比度低、边缘不连续和光照变化导致的特征模糊问题

  • 引入高效多尺度注意力EMA_attention,提高多尺度,小目标检测能力。

  • focal_modulation_module 提高多尺度小目标检测能力

  • 在C3K2模块中引入特征细化模块FRFN,逐层细化特征,增强了网络对局部和全局信息的捕捉能力。这种方法特别适用于需要多尺度特征、小目标、遮挡等任务。

  • 引入门控瓶颈卷积GBC 关注目标抑制背景干扰,增强模型对裂缝形态信息的建模能力。

  • 在C3K2模块中引入多分支卷积IDC,提取多尺度特征。

  • 在C3K2模块中引入核选择融合注意力KSFA 增大感受野,提高多尺度 小目标检测能力

  • 在C3K2模块引入局部特征嵌入全局特征提取模块LEGM 融合全局与局部特征解决多尺度、去噪、遮挡的问题

  • 在C3K2模块引入LIA利用局部重要性的注意力机制,抑制噪声,提高遮挡、小目标检测。

  • 在C3K2模块中引入LLSKM(可学习局部显著核模块),借鉴 “中心减邻域” 原理,将传统显著核分解为可学习的卷积核与注意力增强的普通卷积,通过通道注意力机制动态调整参数,引导网络捕捉红外小目标的点、边缘等显著特征,提升检测敏感性与多尺度适应性。

  • 在C3K2模块引入LSKA利用分离卷积核实现轻量化,同时结合局部和全局信息,提高小目标、遮挡检测

  • 在C3K2模块引入局部通道注意力机制MLCA,结合局部和全局特征的能力,有效增强了模型对重要信息的关注。

  • 在C3K2模块引入多尺度大核注意力MLKA,通过结合大核分解与多尺度学习提升多尺度目标检测能力。

  • 在C3K2模块引入MSBlock,提升多尺度,小目标。

  • 在C3K2模块中引入多尺度前馈网络MSFN,从多个尺度特征中充分挖掘和利用图像中的多尺度特征,提高多尺度检测能力。

  • 引入多尺度小波池化变压器MWPT 通过结合小波变换、多尺度池化以及门控机制等技术解决多尺度、小目标、边缘模糊等问题

  • 引入前景注意力Outlook_atention它能高效地将更细粒度的特征和上下文编码为 token,提升模型对小目标、遮挡的检测性能

  • 引入基于部分卷积的前馈网络PCFN,通过部分卷积和跨通道交互的方式来加强特征表达

  • 引入并行化补丁感知注意力模块PPA 提升小目标检测,解决红外小目标检测下采样信息丢失问题的模块

  • 引入矩形自校准模块RCM,通过矩形自校准注意力机制和形状自校准捕捉全局上下文信息,并结合局部细节融合,提升模型对前景物体的建模能力和边界识别精度。

  • 在C3K2模块中引入Restormer,从不同子空间捕捉特征间关系,计算注意力权重衡量元素重要性以聚合信息,捕捉长距离依赖关系;通过位置编码为模型提供元素位置信息,辅助检测小目标、遮挡。

  • 在C3K2模块中引入SConv,通过空间重构单元(SRU)和通道重构单元(CRU)减少卷积神经网络中的空间和通道冗余,增强对这正以及小目标的检测能力

  • 在C3K2模块中引入Shift_channel_mix,缓解信息损失和梯度错误问题

  • 引入简单无参数注意力模块SimAM 提升小目标和遮挡检测

  • 引入自调制特征聚合模块SMFA,捕获非局部信息和局部细节,协同建模图像的全局结构与局部细节。

  • 在C3K2模块中引入空间带状注意力机制SSA,增强模型对空间信息处理能力。

  • 添加StarNet星形卷积StarsBlock,通过星操作(element-wise multiplication)实现高维非线性特征映射。

  • 引入空间池化模块StripPooling,通过条带池化在水平和垂直方向上捕捉长距离依赖关系,增强全局和局部特征表达。解决遮挡、小目标

  • 在C3K2模块中引入前 k 稀疏注意力TKSA 动态选择重要区域,关注遮挡小目标区域,减少噪声的影响

  • 在C3K2模块中引入小波卷积WaveletConv增加频域信息,有效解决模糊问题以及对边缘和细节高频成分的关注。

  • 引入了小波卷积模块WTConv ,旨在扩大卷积的感受野并有效捕捉图像中的低频信息。其对多尺度问题和小目标问题上有很好的效果。

6️⃣ A2C2f模块改进

  • 使用自适应稀疏自注意力ASSA替换A2C2F中的自注意力机制,减少噪声,提高对遮挡、小目标的检测能力

  • 在A2C2F模块中添加卷积和注意力融合模块CAFM提升小目标和遮挡检测

  • 在A2C2F模块中添加卷积加法自注意力机制CASelf_Attention,使用全群信息缓解CNN带来的细节特征丢失的问题。

  • 在A2C2F模块中添加通道混合器 CGLU利用门控机制提高复杂场景中的检测精度

  • 利用卷积调制ConvMod改进A2C2F,有着自注意力机制的能力,但比其更加轻量化,解决多尺度、小目标问题

  • 使用通道压缩的自注意力机制CRA替换A2C2F中的自注意力机制,利用其查询和键的通道维度缩减为一维的能力,降低了自注意力的计算成本,实现轻量化。

  • 在A2C2F模块中添加可变形交互注意力模块DIA-Module替换原有的注意力,增强空间信息表示,使 YOLOv11在复杂场景下对可变形目标的定位更精准。

  • 在A2C2F模块中添加DLKA_Attention模块,利用其可变形的大核设计,自适应地捕捉不同形状和尺寸的对象特征,适用于遮挡,形状各异的目标

  • 在A2C2F模块中引入特征细化模块FRFN,逐层细化特征,增强了网络对局部和全局信息的捕捉能力。这种方法特别适用于需要多尺度特征、小目标、遮挡等任务。

  • 使用傅里叶变换+Transformer模块FSAS替换原有的自注意力机制,引入频域特征,增强边缘信息,解决图像模糊问题等。

  • 使用HaloAttention换原有的自注意力机制,通过 Haloing 策略和分块操作减少计算量与内存占用,同时构建多尺度特征层次,能有效处理不同尺度对象,提升了模型对复杂视觉任务的适应性和准确性。

  • 使用HTB替换A2C2F原有的自注意力机制,利用动态范围直方图自注意力(DHSA)和双尺度门控前馈网络(DGFF)解决恶劣天气中待检测目标难的问题。

  • 在A2C2F模块中引入多分支卷积IDC,提取多尺度特征。

  • 在A2C2F模块中引入核选择融合注意力KSFA 增大感受野,提高多尺度 小目标检测能力

  • 在A2C2F模块中引入LLSKM(可学习局部显著核模块),借鉴 “中心减邻域” 原理,将传统显著核分解为可学习的卷积核与注意力增强的普通卷积,通过通道注意力机制动态调整参数,引导网络捕捉红外小目标的点、边缘等显著特征,提升检测敏感性与多尺度适应性。

  • 在A2C2F模块引入LSKA利用分离卷积核实现轻量化,同时结合局部和全局信息,提高小目标、遮挡检测。

  • 使用曼哈顿自注意力机制Manhattan_SelfAttention替换A2C2F模块自注意力机制,解决窗口操作对用于自注意力的令牌进行分区,从而降低计算成本

  • 使用多维协作注意力MCAM替换A2C2F模块自注意力机制,通过轻量化设计实现通道、高度、宽度三个维度的协同建模,抗背景干扰,增强多尺度、小目标。

  • 使用频率多尺度注意力MFMSAttentionBlock替换A2C2F模块自注意力机制,使用频域和多尺度相结合的方法增强YOLOv11模型的小目标和多尺度特征提取。

  • 在A2C2F模块引入合局部通道注意力机制MLCA,结合局部和全局特征的能力,有效增强了模型对重要信息的关注。

  • 使用量化脉冲驱动的自注意力机制​​​​​​​MSAR改进A2C2F模块,现轻量化自注意力机制,通过低比特量化权重和二进制脉冲信号显著降低模型参数量与计算能耗,平衡检测效率与精度。

  • 使用多尺度前馈网络MSFN改进A2C2F模块,从多个尺度特征中充分挖掘和利用图像中的多尺度特征,提高多尺度检测能力。

  • 使用单头自注意力SHSA替换A2C2F模块自注意力机制,输入通道的一部分上应用单头注意力来减少计算冗余,同时保留全局和局部信息的结合,从而提高了效率和准确性。

  • 引入自调制特征聚合模块SMFA捕获非局部信息和局部细节,协同建模图像的全局结构与局部细节。

  • 使用稀疏自注意力机制Sparse_Self_Attention替换A2C2F模块自注意力机制,模型能够抑制对语义信息的关注,将更多的注意力放在提取非语义特征上。同时,由于只在张量块内计算,减少了大量不必要的计算,降低了模型的计算量,提高了运行效率。

  • 使用混洗注意力模块SSAttention替换A2C2F模块自注意力机制,旨在更好地聚合不同扫描方向得到的序列,充分利用互补信息。

  • 使用令牌统计自注意力TSSA替换A2C2F模块自注意力机制,通过高效注意力算子解决传统自注意力机制计算和内存复杂度随输入 token 数量呈二次方增长的问题,实现轻量化。

7️⃣ UpSample 改进

  • 引入跨尺度选择性融合模块CSFblock 解决不同分辨率特征融合的问题

  • DySample是一种轻量高效的动态上采样方法,通过动态采样的方式实现上采样。解决传统的最近邻插值和双线性插值的上采样方法。

  • 考虑到YOLO目标检测的neck对特征特征层上采用的时候的时候,会产生特征的丢失,同时增强模型的多尺度特征,本文将SAFM模块替换neck层的upsample()。

7️⃣ Conv改进

  • 在处理复杂图像时,单一的频域信息可能不足以捕获所有重要细节。为了解决这个问题,我们可以结合小波变换(DWT)和卷积操作的Down_wt

  • 入轻量级深度神经网络的卷积核Dual结合了组卷积(GroupConv)和异构卷积(HetConv)的优势降低参数量

  • 引入dynamic_tanh优化模型提高精度

  • MDFF旨在减少上下文特征的损失,融合多分支上下文关系,增强网络提取特征区域的能力

  • 引入RepBN增强卷积过程中的归一化问题

  • 引入残差哈尔离散小波变换RHDWT 降噪、减少特征丢失,增强小目标和遮挡的检测能力

相关文章:

YOLOv12 改进有效系列目录 - 包含卷积、主干、检测头、注意力机制、Neck上百种创新机制 - 针对多尺度、小目标、遮挡、复杂环境、噪声等问题!

🔥 在 YOLO 系列一路狂飙之后,YOLOv12 带来了令人耳目一新的范式转变——它不再以 CNN 为绝对核心,而是首次 围绕注意力机制构建 YOLO 框架,在保证实时性的前提下,将检测精度再次推向新高度! 为了进一步探…...

STM32 I2C总线通信协议

引言 在嵌入式系统开发领域,I2C(Inter-Integrated Circuit)总线作为经典的双线制串行通信协议,凭借其简洁的物理层设计和灵活的通信机制,在传感器互联、存储设备控制、显示模块驱动等场景中占据重要地位。本文将深入剖…...

多物理场耦合低温等离子体装置求解器PASSKEy2

文章目录 PASSKEy2简介PASSKEY2计算流程PASSKEy2 中求解的物理方程电路模型等离子体模型燃烧模型 PASSKEy2的使用 PASSKEy2简介 PASSKEy2 是在 PASSKEy1 的基础上重新编写的等离子体数值模拟程序。 相较于 PASSKEy1, PASSKEy2 在具备解决低温等离子体模拟问题的能力…...

【Harmony_Bug】forEach + asyncawait 的异步陷阱

一、问题描述 今天在做一个RDB的小项目时,遇到一个问题,因为没报错其实也是不算是BUG,以下描述时我就直接说关键点,其他代码忽略。 我的数据模型初始化有六条数据如图 在持久化层,通过initUserData这个方法执行插入。…...

智慧医院建设的三大关键领域

智慧医院建设是医疗行业数字化转型的核心载体,其本质是通过新一代信息技术重构医疗服务模式、优化管理流程、提升患者体验。在当前医疗资源供需矛盾突出的背景下,智慧医院建设已从单纯的设备智能化向系统性变革演进,主要集中在以下三大关键领…...

雷电模拟器怎么更改IP地址

游戏搬砖会使用雷电模拟器多开窗口,若模拟器窗口开多了,IP地址是一样的就怕有限制,很容易被游戏后台检测到。在雷电模拟器中更改IP地址可以通过以下方法实现: 方法一:通过模拟器内设置代理 1. 打开雷电模拟器 启动雷…...

软件编程命名规范

编程命名规范是保证代码可读性、可维护性和团队协作效率的重要基础。以下是涵盖主流编程语言的通用命名规范,结合行业最佳实践和常见规范(如Google、Microsoft、Airbnb等风格指南): 一、通用命名原则 清晰优先:名称应…...

#什么是爬虫?——从技术原理到现实应用的全面解析 VI

什么是爬虫?——从技术原理到现实应用的全面解析 V 二十六、异构数据采集技术突破 26.1 PDF文本与表格提取 import pdfplumber import pandas as pddef extract_pdf_data(pdf_path):"""从PDF中提取文本和表格数据:param pdf_path: PDF文件路径:return: 包含…...

芯岭技术XL32F003单片机 32位Cortex M0+ MCU简单介绍 性能优异

XL32F003单片机是深圳市芯岭技术有限公司的一款基于 32 位 ARM Cortex-M0 内核的高性能微控制器,提供SOP8/SOP14/SOP16/TSSOP20/SSOP24/QFN20/QFN32多种封装可选,可满足不同设计需求。XL32F003可用于工业控制、手持设备、PC 外设、传感器节点等应用场景&…...

使用浏览器的Clipboard API实现前端复制copy功能

在前端开发中,复制文本到剪贴板的功能通常使用浏览器的 Clipboard API 实现。比如 navigator.clipboard.writeText 方法。以下是一个简单的案例,展示如何使用 Clipboard API 实现复制文本的功能。 基本用法 首先,你需要创建一个按钮&#x…...

Struts2框架学习

文章目录 基础实战配置文件NameSpaces 基础 实战 配置文件 文件1&#xff1a; <?xml version"1.0" encoding"UTF-8"?> // 声明这是一个 XML 文件&#xff0c;且使用 UTF - 8 编码 <!DOCTYPE struts PUBLIC"-//Apache Software Foundat…...

React 实现爱心花园动画

主页&#xff1a; import React, { useEffect, useRef, useState } from react; import /assets/css/Love.less; import { Garden } from /utils/GardenClasses;// 组件属性接口 interface LoveAnimationProps {startDate?: Date; // 可选的开始日期messages?: { // 可…...

CAPL编程_03

1_文件操作的相关函数&#xff1a; 读文本文件内容 读取文本文件操作的三部曲 1&#xff09;打开文件 —— openFileRead ( ) 2&#xff09;逐行读取 —— fileGetString ( ) 、fileGetStringSZ ( ) 3&#xff09;关闭文件 —— fileClose ( ) char content[100];…...

网络准入控制系统:2025年网络安全的坚固防线

在当今数字化时代&#xff0c;网络安全已成为至关重要的议题。阳途网络准入控制系统作为保障网络安全的关键机制&#xff0c;发挥着不可替代的作用。 阳途网络准入控制系统核心目的在于确保只有合法、合规的设备与用户能够接入网络。从本质上讲&#xff0c;它通过一系列技术手段…...

【音视频】⾳频处理基本概念及⾳频重采样

一、重采样 1.1 什么是重采样 所谓的重采样&#xff0c;就是改变⾳频的采样率、sample format、声道数等参数&#xff0c;使之按照我们期望的参数输出。 1.2 为什么要重采样 为什么要重采样? 当然是原有的⾳频参数不满⾜我们的需求&#xff0c;⽐如在FFmpeg解码⾳频的时候…...

自然语言处理将如何颠覆未来教育?个性化学习新纪元

教育领域正经历着自印刷术发明以来最深刻的变革。自然语言处理&#xff08;NLP&#xff09;技术突破传统教育框架的桎梏&#xff0c;正在重塑人类知识传递的基本范式。这场变革的实质不在于教学工具的数字化升级&#xff0c;而在于重新定义了"教"与"学"的本…...

4月25日星期五今日早报简报微语报早读

4月25日星期五&#xff0c;农历三月廿八&#xff0c;早报#微语早读。 1、祝贺&#xff01;神舟二十号载人飞船发射取得圆满成功&#xff1b; 2、文旅部&#xff1a;今年一季度国内出游人次17.94亿&#xff0c;同比增长26.4%&#xff1b; 3、2025五一档新片预售票房破1000万&…...

秒级到毫秒:BFD的速度革命

一、BFD技术概述 ​​双向转发检测&#xff08;BFD&#xff09;​​是一种轻量级的网络协议&#xff0c;专门用于快速检测、监控网络链路或IP路由的连通性状态。作为网络领域的"心跳检测器"&#xff0c;BFD通过毫秒级&#xff08;默认1000ms&#xff09;的快速探测机…...

systemctl 命令详解与常见问题解决

在 Linux 系统中&#xff0c;service 命令和 chkconfig 命令一直用于管理服务&#xff0c;但随着 systemd 的引入&#xff0c;systemctl 命令逐渐成为主流。systemctl 命令不仅功能强大&#xff0c;而且使用简单。本文将详细介绍 systemctl 命令的作用以及常见问题的解决方法。…...

5.6 Microsoft Semantic Kernel:专注于将LLM集成到现有应用中的框架

5.6.1 Semantic Kernel概述 Microsoft Semantic Kernel&#xff08;以下简称SK&#xff09;是一个开源的软件开发工具包&#xff08;SDK&#xff09;&#xff0c;旨在帮助开发者将大型语言模型&#xff08;LLM&#xff09;无缝集成到现有的应用程序中。它支持C#、Python和Java…...

vite+vue构建的网站项目localhost:5173打不开

原因&#xff1a;关掉了cmd命令提示符&#xff0c;那个端口就没有被配置上&#xff0c;打开就是这样的。 解决方法&#xff1a;重新在工作目录下打开cmd&#xff0c;输入npm run dev重新启动项目。 重新出现这样的界面说明已经成功启动项目&#xff0c;再次在浏览器中刷新并输入…...

电脑屏幕录制软件Captura源码编译(Win10,VS2022)

屏幕录像的意义&#xff1a; 教育教学方面 制作教学资源&#xff1a;教师可以通过录制屏幕来制作教学视频&#xff0c;演示软件操作、讲解复杂的知识点等。学生可以随时观看这些视频&#xff0c;便于复习和巩固知识&#xff0c;尤其对于一些抽象的概念或难以在课堂上一次性掌握…...

【版本控制】SVN + TortoiseSVN版本管理实用教程(附安装+开发常用操作)

摘要&#xff1a; 本文将带你从零开始掌握 SVN 版本控制系统&#xff0c;结合 TortoiseSVN 图形客户端工具&#xff0c;深入学习包括安装、检出、提交、更新、回滚、冲突解决等常用开发操作&#xff0c;快速上手团队协作&#xff01; &#x1f9e9; 什么是 SVN&#xff1f; SV…...

常见网络安全攻击类型深度剖析(二):SQL注入攻击——原理、漏洞利用演示与代码加固方法

常见网络安全攻击类型深度剖析(二):SQL注入攻击——原理、漏洞利用演示与代码加固方法 在Web应用安全领域,SQL注入(SQL Injection)是历史最悠久、危害最广泛的攻击类型之一。据OWASP(开放式Web应用安全项目)统计,SQL注入连续多年稳居“OWASP Top 10”漏洞榜单前列,每…...

DeepSeek智能时空数据分析(三):专业级地理数据可视化赏析-《杭州市国土空间总体规划(2021-2035年)》

序言&#xff1a;时空数据分析很有用&#xff0c;但是GIS/时空数据库技术门槛太高 时空数据分析在优化业务运营中至关重要&#xff0c;然而&#xff0c;三大挑战仍制约其发展&#xff1a;技术门槛高&#xff0c;需融合GIS理论、SQL开发与时空数据库等多领域知识&#xff1b;空…...

day49—双指针+贪心—验证回文串(LeetCode-680)

题目描述 给你一个字符串 s&#xff0c;最多 可以从中删除一个字符。 请你判断 s 是否能成为回文字符串&#xff1a;如果能&#xff0c;返回 true &#xff1b;否则&#xff0c;返回 false 。 示例 1&#xff1a; 输入&#xff1a;s "aba" 输出&#xff1a;true…...

AI电视里的达摩

2025年&#xff0c;所有电视都搭载了AI功能&#xff0c;所有电视厂商都在宣传AI能力。但问题是&#xff0c;消费者依旧没有对AI电视做出什么积极的回应。“AI电视是鸡肋”“AI只是电视的又一轮泡沫”等观点层出不穷。 为什么明明AI技术能够解决电视的很多问题&#xff0c;但AI电…...

算力网络(CFN)在跨校联合科研中的应用:安全性挑战与联邦调度实践

引言&#xff1a;科研协作的算力困境 上海交通大学与麻省理工学院联合开展的高能物理模拟实验&#xff0c;因算力资源分配不均导致部分节点连续72小时处于空转状态。这个典型案例揭示了当前跨机构科研协作的痛点&#xff1a;‌算力资源无法实现安全可信的细粒度共享‌。算力网…...

面向对象编程核心:封装、继承、多态与 static 关键字深度解析

面向对象编程核心&#xff1a;封装、继承、多态与 static 关键字深度解析 一、封装&#xff1a;数据安全与接口规范 1. 封装的本质与作用 核心定义&#xff1a;将数据&#xff08;属性&#xff09;与操作数据的方法&#xff08;行为&#xff09;绑定在类中&#xff0c;隐藏内…...

c++进阶——类与继承

文章目录 继承继承的基本概念继承的基本定义继承方式继承的一些注意事项 继承类模板 基类和派生类之间的转换继承中的作用域派生类的默认成员函数默认构造函数拷贝构造赋值重载析构函数默认成员函数总结 不能被继承的类继承和友元继承与静态成员多继承及其菱形继承问题继承模型…...

【CODEMATE】进制转换(transform) 粤港澳青少年信息学创新大赛 C/C++/Python 解题思路

目录 问题描述做题思路&#xff0c;解决过程思路&#xff1a;踩过的坑&#xff1a;核心代码C 语言 / C 切片&#xff1a;C 语言 / C 判断 ‘A’ 数量&#xff1a;Python 切片&#xff1a;Python 判断 ‘A’ 数量&#xff1a; 完整代码C 语言 完整代码C 完整代码Python 完整代码…...

window和ubuntu自签证书

window下 以管理员身份 运行 Windows PowerShell # CN192.168.0.100 (换成自己的IP或者域名) # O(组织) OU(组织单位) # Cert:\LocalMachine\My&#xff1a;证书存储位置 # test_10&#xff1a;自定义证书名称 .AddYears(10): 证书过期时间 10 年 $cert New-SelfSi…...

ES历史版本下载

下载地址 Past Releases of Elastic Stack Software | Elastic 安装步骤参考 windows 安装 Elasticsearch_windows安装elasticsearch-CSDN博客...

技术面试一面标准流程

0. 自我介绍 ...... 1. 拷打项目 项目干了啥&#xff1f; 难点是啥&#xff1f; 问项目中用到的东西&#xff1f; 扩展&#xff1f; ...... 2. 基础知识 数据结构、C基础、设计模式 数据结构&#xff1a; 堆&#xff1f; unordered_map 和 布隆过滤器 都是用于查找…...

第14篇:Linux设备驱动程序入门<一>

Q&#xff1a;如何简单的理解DE1-SoC-UP Linux系统的设备驱动程序&#xff1f; A&#xff1a;设备驱动程序&#xff08;Device Driver&#xff09;&#xff0c;简称驱动程序&#xff08;Driver&#xff09;。DE1-SoC-UP Linux系统中的设备驱动程序允许系统软件与DE1-SoC开发板…...

软件设计模式与体系结构:基于Java实现管道-过滤器架构

软件设计模式与体系结构&#xff1a;基于Java实现管道-过滤器架构 前言 在软件架构中&#xff0c;数据流风格是一种常见的架构模式&#xff0c;特别适用于需要对数据进行一系列处理的场景。管道-过滤器&#xff08;Pipe and Filter&#xff09;*架构是数据流风格的典型代表&a…...

Node.js 包管理工具介绍

Node.js 包管理工具介绍 Node.js 是一个基于 Chrome V8 JavaScript 引擎的服务器端运行环境&#xff0c;它允许开发者使用 JavaScript 进行后端开发。为了方便管理和维护项目中使用的第三方库和模块&#xff0c;Node.js 提供了多种包管理工具。本文将详细介绍几种常用的 Node.…...

Node.js 应用场景

Node.js 应用场景 引言 Node.js 是一个基于 Chrome V8 JavaScript 引擎的开源、跨平台 JavaScript 运行环境。它主要用于服务器端开发&#xff0c;通过非阻塞 I/O 模型实现了高并发处理能力。本文将详细介绍 Node.js 的应用场景&#xff0c;帮助你了解其在实际项目中的应用。…...

C/C++线程详解

一、C语言线程创建&#xff08;POSIX线程&#xff09; 1. 基本创建方法 POSIX线程&#xff08;pthread&#xff09;是C语言中创建线程的标准API&#xff1a; #include <pthread.h> #include <stdio.h>void* thread_func(void* arg) {printf("Thread runnin…...

动态ip与静态ip的概念、区别、应用场景

动态ip与静态ip的区别 前言 一、IP地址的概念和作用 1.1、IP地址的定义 1.2、IP地址的作用 二、动态IP和静态IP的区别 2.1、动态IP和静态IP的定义 2.2、动态IP和静态IP的特点 2.3、动态IP和静态IP的优缺点比较 三、动态IP和静态IP的应用场景 3.1. 动态IP的应用场景 3.2. 静态IP…...

P12167 [蓝桥杯 2025 省 C/Python A] 倒水

P12167 [蓝桥杯 2025 省 C/Python A] 倒水 题目描述 小蓝有 n n n 个装了水的瓶子&#xff0c;从左到右摆放&#xff0c;第 i i i 个瓶子里装有 a i a_i ai​ 单位的水。为了美观&#xff0c;小蓝将水循环染成了 k k k 种颜色&#xff0c;也就是说&#xff0c;第 i i i …...

Appium自动化开发环境搭建

自动化 文章目录 自动化前言 前言 Appium是一款开源工具&#xff0c;用于自动化iOS、Android和Windows桌面平台上的本地、移动web和混合应用程序。原生应用是指那些使用iOS、Android或Windows sdk编写的应用。移动网页应用是通过移动浏览器访问的网页应用(appum支持iOS和Chrom…...

【金仓数据库征文】金仓数据库:国产化浪潮下的技术突破与行业实践

目录 前言 技术突破&#xff1a;从追赶国际到引领创新 行业深耕&#xff1a;从医疗到航空航天的多领域落地 事务管理与ACID特性 事务管理概述 索引优化与性能调优 安全性与备份恢复策略 Json构造函数 总结 前言 在数字化转型的全球趋势下&#xff0c;数据库作为信息系…...

计算机操作系统

1. T0 时刻是否为安全状态&#xff1f; 步骤 1: 计算当前可用资源 总资源数量&#xff1a; A: 17B: 5C: 20 已分配资源&#xff1a; P1: (2, 1, 2)P2: (4, 0, 2)P3: (4, 0, 5)P4: (2, 0, 4)P5: (3, 1, 4) 当前可用资源&#xff1a; A: 17 - (2 4 4 2 3) 2B: 5 - (1 0 …...

linux系统问题杂谈

1.配置好anaconda之后&#xff0c;在一个终端中编辑好环境变量之后能够正常使用conda命令&#xff0c;但是新打开一个中断使用conda命令报错"无法识别conda"。 原因&#xff1a;使用“export PATH"/home/username/anaconda3/bin:$PATH"命令&#xff0c;临…...

百度打响第一枪!通用超级智能体时代,真的来了

Create2025百度AI开发者大会在武汉举行&#xff0c;K哥受邀参加&#xff0c;看到了许多有趣的创新技术和产品。其中最令我印象深刻的是一款全新发布的通用超级智能体——心响App。 这款App通过多智能体复杂组合、协作&#xff0c;满足用户能够「一站式」解决复杂问题的使用诉求…...

FWFT_FIFO和Standard_FIFO对比仿真

在FPGA中使用FIFO时&#xff0c;如果使用FPGA厂商提供的FIFO IP&#xff0c;一般都会有First Word Fall Through FIFO和Standard FIFO类型选项&#xff0c;那么这两种FIFO有什么差异么。两种FIFO的端口是一样的&#xff0c;看不出区别&#xff0c;只有通过仿真&#xff0c;才能…...

【网络原理】TCP提升效率机制(二):流量控制和拥塞控制

目录 一. 前言 二. 流量控制 三. 拥塞控制 一. 前言 TCP的可靠传输依靠确认应答机制&#xff0c;超时重传机制是对确认应答的一种补充&#xff0c;解决了丢包问题 为了提高传输效率&#xff0c;避免大量的时间都浪费在等待应答的过程&#xff0c;故引入了滑动窗口机制&…...

DeepSeek+Cline:开启自动化编程新纪元

目录 一、引言&#xff1a;AI 编程时代的曙光二、认识 DeepSeek 和 Cline2.1 DeepSeek 是什么2.2 Cline 详解2.3 两者结合的魅力 三、DeepSeek Cline 安装与配置全流程3.1 安装 VS Code3.2 安装 Cline 插件3.3 获取 DeepSeek API Key3.4 配置 Cline 与 DeepSeek 连接 四、实战演…...

【RedisLockRegistry】分布式锁

RedisLockRegistry分布式锁 介绍 RedisLockRegistry‌是Spring框架提供的一种分布式锁机制&#xff0c;它基于Redis来实现对共享资源的保护&#xff0c;防止多个进程同时对同一资源进行修改&#xff0c;从而避免数据不一致或其他问题‌ 基本原理 RedisLockRegistry通过Redi…...