尽管基于深度学习的解决方案在图像超分辨率(SR)中取得了令人瞩目的重建性能,但这些模型通常较大且架构复杂,使其与许多具有计算和内存限制的低功耗设备不兼容。为了克服这些挑战,我们提出了一种用于高效 SR 设计的空间自适应特征调制(SAFM)机制。具体来说,SAFM 层使用独立计算来学习多尺度特征表示,并聚合这些特征以进行动态空间调制。由于 SAFM 优先利用非局部特征依赖性,我们进一步引入了卷积通道混合器(CCM)来编码局部上下文信息并同时混合通道。本文考虑到YOLO目标检测的neck对特征特征层上采用的时候的时候,会产生特征的丢失,同时增强模型的多尺度特征,本文将SAFMN模块替换neck层的upsample()。
1. 空间自适应特征调制网络SAFMN结构介绍
SAFMN(Spatial Adaptive Feature Modulation Network)即空间自适应特征调制网络。它是一种用于图像超分辨率(SR)的深度学习网络架构。在深度学习的图像超分辨率领域,虽然基于深度学习的方法能取得很好的重建效果,但往往模型复杂且庞大,不适合在低功耗设备上运行。SAFMN 旨在解决这一问题,提供一种高效的图像超分辨率方案。
1. 多尺度特征表示:
SAFMN 中的关键组件是空间自适应特征调制层(SAFM 层)。它通过独立计算来学习多尺度特征表示。具体来说,模型中可能包含多个 MFGU(多特征生成单元)模块,这些模块相互协作来处理不同尺度的特征。
2. 动态空间调制:
SAFM 层会聚合这些多尺度特征,并进行动态空间调制。这种调制有助于更好地利用特征信息,提升图像超分辨率的效果。
3. 非局部特征依赖性和局部上下文信息:
由于 SAFM 优先利用非局部特征依赖性,模型还引入了卷积通道混合器(CCM)。CCM 用于编码局部上下文信息并同时混合通道,这样可以在减少模型复杂度的同时,保证模型的性能。
2. YOLOv11与SAFMN的结合
1. 本文将SAFMN模块替换neck层的upsample(),增强模型的多尺度特征。
3. SAFMN代码部分
YOLOv8_improve/YOLOv11.md at master · tgf123/YOLOv8_improve
4. 将SAFMN引入到YOLOv11中
第一: 将下面的核心代码复制到D:\model\yolov11\ultralytics\change_model路径下,如下图所示。
第二:在task.py中导入SAFM包
第三:在task.py中的模型配置部分下面代码
第四:将模型配置文件复制到YOLOV11.YAMY文件中
第一个改进的配置文件
第五:运行成功
from ultralytics.models import NAS, RTDETR, SAM, YOLO, FastSAM, YOLOWorld
if __name__=="__main__":
# 使用YOLOv11.yamy文件搭建的模型训练
model = YOLO(r"D:\model\yolov11\ultralytics\cfg\models\11\yolo11_SAFM.yaml") # build a new model from YAML
model.train(data=r'D:\model\yolov11\ultralytics\cfg\datasets\VOC_my.yaml',
epochs=300, imgsz=640, batch=64
# , close_mosaic=10
)