在道路裂缝、工业缺陷、遥感细长目标等视觉像素级任务中目标普遍存在形态不规则、多方向分支、边缘纤细模糊、与背景对比度低、拓扑结构复杂的特性传统卷积采用被动式全局信息处理难以针对性建模目标的方向属性与边缘细节常规门控卷积虽可动态调控特征流但缺乏几何方向先验引导在复杂不规则几何结构下边缘感知能力不足且多数增强模块会引入可观计算开销无法兼顾特征精度、边缘敏感性与模型轻量化。为破解这一矛盾面向不规则结构的精细特征提取需求方向引导边缘门控卷积 DEGConv应运而生以极小计算代价实现方向感知与边缘增强的深度融合。基础模型改进后的1. DEGConv原理DEGConv 以空间分块处理、方向先验嵌入、轻量化边缘卷积、门控动态加权为核心逻辑先通过空间分块将全局特征拆解为局部视图聚焦局部精细结构并降低冗余计算再基于 Sobel 梯度计算与方向直方图统计生成目标专属方向先验嵌入为模型注入几何方向先验知识随后采用条形卷积构建轻量化边缘卷积定向提取水平、垂直等方向敏感特征最后通过门控机制结合方向嵌入动态加权特征流优先保留目标边缘与方向关键信息、抑制背景噪声在几乎不增加计算量的前提下大幅提升模型对不规则几何.结构的边缘与方向表征能力。DEGConv 由空间分块重排、方向嵌入生成、边缘卷积、门控机制四大模块级联构成结构紧凑且即插即用空间分块重排Rearrange将输入特征图均匀划分为若干非重叠局部视图重塑特征空间分布屏蔽全局冗余干扰为局部方向与边缘提取奠定基础方向嵌入生成对分块特征做通道平均池化通过 Sobel 算子计算水平 / 垂直梯度经反正切函数得到像素方向弧度再分单元格统计方向直方图生成方向先验经卷积、归一化、自适应平均池化得到维度匹配的方向嵌入向量轻量化边缘卷积Edge Convolution先通过 1×1 卷积降维缩减计算量再用 1×k 与 k×1 条形卷积分别提取水平、垂直方向特征拼接后经深度卷积输出轻量化边缘特征门控机制将方向嵌入与原特征融合经边缘卷积与 Sigmoid 生成门控权重对原始特征的边缘卷积结果做逐元素加权最后重排恢复特征尺寸并追加边缘卷积后处理消除分块边界偏差。2. YOLO与DEGConv的结合将 DEGConv 融入 YOLO 检测框架可借助其方向感知与边缘增强能力精准捕捉小目标、细长类目标的边缘与方向特征显著提升 YOLO 对不规则目标的检测召回率与边界框回归精度。其极致轻量的设计几乎不增加推理延迟完美契合 YOLO 的实时检测定位同时方向先验与门控机制能有效抑制复杂背景噪声干扰强化特征的判别性与鲁棒性。3.DEGConv代码部分YOLO11|YOLO12|YOLO26|改进| 方向引导边缘门控卷积DEGConv通过方向先验嵌入、空间分块与边缘门控机制_哔哩哔哩_bilibiliYOLOv11模型改进讲解教您如何修改YOLOv11_哔哩哔哩_bilibiliYOLOv11 原理代码 详细剖析_哔哩哔哩_bilibilihttps://www.bilibili.com/video/BV1HnosYREZJ/?spm_id_from333.1387.collection.video_card.click代码获取YOLOv8_improve/YOLOv11.md at master · tgf123/YOLOv8_improve4. DEGConv到YOLOv11中第一: 将下面的核心代码复制到D:\model\yolov11\ultralytics\change_model路径下如下图所示。​​​​​​​第二在task.py中导入包​​第三在task.py中的模型配置部分下面代码​​ ​第四将模型配置文件复制到YOLOV11.YAMY文件中​​​​​​​ ​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​from ultralytics.models import NAS, RTDETR, SAM, YOLO, FastSAM, YOLOWorld if __name__ __main__: # 使用自己的YOLOv8.yamy文件搭建模型并加载预训练权重训练模型 model YOLO(r/home/tgf/tgf/yolo/model/YOLO11_All/ultralytics/cfg/models/11/yolo11_DEGConv.yaml)\ # .load(r/home/tgf/tgf/yolo/model/YOLO11_All/yolo11n.pt) # build from YAML and transfer weights results model.train(data/home/tgf/tgf/yolo/model/YOLO11_All/ultralytics/cfg/datasets/VOC_my.yaml, epochs300, imgsz640, batch4, # emaFalse, # cache False, # single_cls False, # 是否是单类别检测 # workers 0, # resumerD:/model/yolov8/runs/detect/train/weights/last.pt, amp False )