图像融合任务在目标检测中的性能评估与深度思考

图像融合任务在目标检测中的性能评估与深度思考

融合图像能够有效保留红外图像中的显著性目标与可见光图像中的纹理细节,如何通过下游实验进行验证?我们将分享实现细节。目前,可以把图像融合任务在目标检测中的性能评估,分为以下几种情况:

方法 内容 评价
基于现有目标检测官方开源的基于(COCO)预训练模型如YOLOv8,直接对融合图像进行检测,基于检测的结果直接与数据集中的标签度量评价指标 COCO中的80个检测类别与对应融合数据集中的标签不一致,只能检测公共的类别:比如人、车等
直接用某些方法中联合下游任务在对应目标检测数据集中重新训练过的模型来进行检测 虽然很方便,但部分方法微调过的检测模型没有开源,不同人的实现方式不同,不太方便直接进行测试
基于对应融合数据集中的可见光图像或者红外图像来单独重新训练目标检测模型,用于融合图像的检测 只针对单个模态训练的检测模型,无法有效利用另外一个模态的信息,可能导致融合图像的检测精度弱于某个单模态下的检测结果
针对每种图像融合方法得到的融合图像,单独训练一个目标检测模型,用它的性能来评估融合图像在下游任务中的表现 每种融合方法训练一个目标检测模型,主要的缺点是时间开销大、复杂又繁琐,且融合图像的优势是多维的,感觉优化时好像在不断调整检测模型,送入的融合图像虽然有差异,但很容易照成指标差距不会太过显著等情况
选择一种具有代表性且针对下游任务本身进行的融合方法,以它的融合图像作为统一参考,仅训练一个目标检测模型作为基准用它来评估检测性能 很方便测试也可控,统一的条件下更能体现出不同融合方法的差距;不足就是选择的方法是否有代表性,是否融合图像要和它一致才能表现出更好的性能

深度思考

  • 第一种方法: 直接基于开源的公开数据集模型下训练的检测模型做检测感觉是可行的,但是标签不一致会导致度量指标等挺复杂、不方便的;而且度量的类别有限,只能检测出公共的类别,不过感觉这样的方法更加公平,更能体现出融合图像在下游任务中的表现;但是,这样操作的认可度可能千人千面;由于模型都是在可见光场景下训练的,部分场景可能导致融合图像表现不如可见光图像。

  • 第二种方法:专门针对图像融合下游任务训练过的检测模型来做下游任务的评估挺好的,但是大部分方法似乎没有开源,即便开源了测试起来也挺费劲的;如果能简化使用的流程,也挺不错的。

  • 第三种方法:单个模态下训练的模型可能会导致融合图像的检测结果在部分场景低于单个模态下的表现,这样会让人质疑融合的必要性!

  • 第四种方法:这种方法感觉可以,但是会很复杂、繁琐。而且如果是这样做的研究者,百分之90%不会开源全部方法下的检测模型,所以我自己感觉不是很必要。而且融合图像的优势是多样化的,都有相同的检测标签做约束,它会通过不同的路径去优化检测模型本身,而不是关注输入的好坏。虽然输入的融合图像是不同的,但是不同融合图像的表现差异没有那么巨大的鸿沟,可能导致在标签的约束下,每种方法的融合性能差距不显著。因此,我感觉没办法很好的去评估不同融合方法在下游任务中的表现,可能它也能很好的评估下游任务中的性能,但是我自己是不太推荐这种方法。

  • 第五种方法:如果能够选择一种与下游任务很相关、具有代表性的融合方法,且你自己设计的融合方法没有基于它作为Baseline去生成融合图像的话,那么选择一个这样统一的融合标准去训练检测模型,然后用它来统一度量下游任务中的性能感觉挺公平的。难点之一就在于选择的方法是否具有代表性、是否与下游任务相关,唯一担忧的就是检测性能是否会限制于你的融合结果与该方法融合结果更相似的时,才能呈现出更好的性能。

总结:我个人更加倾向于第1、2、5种方法,可能有部分人会倾向于第4种方法;如果是做学术研究的话应该还是要考虑两个模态才行,最好选择2、4、5来做,只要言之有理即可接受。


融合图像在YOLOv8目标检测中的性能评估与实现(以第五种方法为例)

代码: https://github.com/yidamyth/IF_Yolov8

概览

  • 首先,从 M3FD 数据集中选取红外(IR)与可见光(VIS)图像对,采用具有代表性的 SeAFusion 方法生成融合图像,作为下游目标检测评估的基准输入。
  • 以融合图像及其对应的原始目标标注为训练数据,构建并训练 YOLOv8-s 目标检测模型,以确保检测网络结构与训练策略的一致性。
  • 在保持相同检测模型设置不变的前提下,将训练得到的模型用于不同融合方法生成融合图像的目标检测测试,从而通过检测性能差异评估各类图像融合方法对下游目标检测任务的影响。

数据集

方法与参考

运行说明

  • train.py:训练脚本,修改data.yaml配置文件后,直接运行该代码得到可训练模型并得到对应权重。
  • test.py:运行脚本,用于评估/计算指标,包括mAP、precision、recall 等。
  • predict.py:运行脚本,直接得到对应目标检测结果,结果将保存在对应runs目录下。

数据结构

  • data.yaml为配置文件,注意根据你的真实路径修改对应 data.yaml 中的path路径。

  • 基于SeAFusion融合结果构建的训练集,下载链接: https://pan.baidu.com/s/5uZCNUqHD6dZW2NL2ofvA_w 请放到./IF_Yolov8/Datasets/M3FD/images/train。

  • 想要基于Vis或者Ir图像训练目标检测模型,在上面的M3FD数据集中下载即可,替换对应的images/train文件。

  • 基于其它融合方法训练目标检测模型,把对应方法的融合结果替换训练集中的图像即可。

    data.yaml

    path: /Users/yida/Desktop/MyGIthub/MyGitHub/IF_Yolov8/Datasets/M3FD # 数据集根目录
    train: images/train # 训练图像目录
    val: images/train # 验证图像目录
    test: images/test # 测试图像目录

    数据目录

    Datasets/M3FD/
    images/
    train/ # 融合后或用于训练的图像
    val/ # 验证/测试图像
    labels/
    train/ # 对应每张图像的 .txt(YOLO 格式)
    val/ # 对应每张图像的 .txt(YOLO 格式)

环境与依赖

  • 推荐 Python 版本与核心依赖安装如下:
bash 复制代码
# Ours
conda create -n IF_Yolov8 python=3.9.18
conda activate IF_Yolov8
pip install torch==2.4.1 torchvision==0.19.1
pip install -U ultralytics
# 运行环境可参考YOLO系列的官方运行环境:https://docs.ultralytics.com/zh/models/yolov8

模型选择

在训练脚本train.py中修改对应的模型即可,方便各位适用不同模型,提供了可选择的:n | s | m | l的Yolov8权重,权重 x 可下载:https://pan.baidu.com/s/5uZCNUqHD6dZW2NL2ofvA_w

model = YOLO("yolov8s.pt")

致谢与引用

  • 详细实验结果见论文:"Joint multi-view embedding with progressive multi-scale alignment for unaligned infrared-visible image fusion"(ME-PMA)。代码与说明:https://github.com/yidamyth/ME-PMA

  • 对于直接或间接采用本项目方法或实验设置的工作,欢迎引用我们的论文;若在下游任务实验中严格遵循本文的配置进行评估,请直接引用本文,或在文中明确说明实验设置来源或实验设置参考本工作即可。

  • 任何问题欢迎提对应的Issue(),尽可能第一时间回复大家。

引用 BibTeX:

复制代码
@article{2026_ME-PMA,
   title   = {Joint multi-view embedding with progressive multi-scale alignment for unaligned infrared-visible image fusion},
   author  = {Chen, Yida and Zhang, Yafei and Li, Huafeng and Yu, Zhengtao and Liu, Yu},
   journal = {Information Fusion},
   volume  = {128},
   pages   = {103960},
   year    = {2026},
   doi     = {10.1016/j.inffus.2025.103960}
}

相关推荐
Coding茶水间3 小时前
基于深度学习的水面垃圾检测系统演示与介绍(YOLOv12/v11/v8/v5模型+Pyqt5界面+训练代码+数据集)
图像处理·人工智能·深度学习·yolo·目标检测·机器学习·计算机视觉
那雨倾城11 小时前
YOLO + MediaPipe 在PiscCode上解决多脸 Landmark 中「人脸数量固定」的问题
图像处理·人工智能·深度学习·yolo·目标检测·计算机视觉
智驱力人工智能11 小时前
从合规到习惯 海上作业未穿救生衣AI识别系统的工程实践与体系价值 未穿救生衣检测 AI救生衣状态识别 边缘计算救生衣监测设备
人工智能·深度学习·opencv·算法·目标检测·边缘计算
智驱力人工智能16 小时前
超越识别 将光学字符识别(OCR)技术转化为可靠业务能力的交付思维 光学字符识别 金融票据OCR识别系统 物流单据自动识别技术
人工智能·opencv·算法·目标检测·ocr·边缘计算
J_Xiong011716 小时前
【VLMs篇】10:使用Transformer的端到端目标检测(DETR)
深度学习·目标检测·transformer
Coding茶水间1 天前
基于深度学习的学生上课行为检测系统演示与介绍(YOLOv12/v11/v8/v5模型+Pyqt5界面+训练代码+数据集)
图像处理·人工智能·深度学习·yolo·目标检测·机器学习·计算机视觉
AI小怪兽1 天前
YOLO11-4K:面向4K全景图像实时小目标检测的高效架构
人工智能·目标检测·计算机视觉·目标跟踪·架构
Blossom.1181 天前
AI边缘计算实战:基于MNN框架的手机端文生图引擎实现
人工智能·深度学习·yolo·目标检测·智能手机·边缘计算·mnn
羞儿1 天前
【读点论文】Few-Shot Object Detection A Comprehensive Survey元学习和迁移学习
目标检测·迁移学习·元学习·小样本学习