
YOLO11 改进 | N-IoU 无/低重叠 bbox 回归 Loss 配置与源码解析一、本文简介二、N-IoU 原理详解2.1 普通 IoU 在低重叠场景中的问题2.2 交并比计算2.3 归一化中心距离2.4 IoU 质量调制的距离惩罚2.5 N-IoU 的整体计算流程三、改进思想与创新点3.1 背景与动机3.2 核心创新点1. 在 IoU 外加入归一化中心距离2. 根据 IoU 质量动态调节距离惩罚3. 与 YOLO11 训练流程兼容3.3 与常见 IoU Loss 对比3.4 在 YOLO11 中的适配方式四、完整代码4.1 `ultralytics/utils/loss.py` 中的配置分支4.2 `ultralytics/utils/metrics.py` 中的 N-IoU 实现五、手把手配置步骤Step 1:确认当前仓库已注册 N-IoUStep 2:在训练配置中切换 box_lossStep 3:检测任务训练示例Step 4:实例分割任务训练示例Step 5:命令行训练示例六、YAML 配置文件6.1 Baseline:默认 CIoU6.2 N-IoU 主配置6.3 N-IoU 别名写法七、实验建议与常见问题7.1 推荐消融顺序7.2 推荐观察指标7.3 不同数据集的选择建议7.4 常见问题7.4.1 N-IoU 会改变模型结构吗?7.4.2 `niou`、`n_iou`、`normalized_iou` 有区别吗?7.4.3 N-IoU 和 DIoU 有什么区别?7.4.4 YOLO11-seg 可以使用 N-IoU 吗?7.4.5 N-IoU 和 GS-NIoU 是同一个吗?八、总结专栏系列:YOLOv11 Loss 改进实战分类专栏推荐:YOLOv11 改进实战、YOLO Loss 改进、目标检测与实例分割文章标签推荐:YOLO11、目标检测、实例分割、N-IoU、Normalized IoU、小目标检测、bbox loss改进点:N-IoU 无/低重叠框归一化中心距离 bbox 回归损失源码入口:ultralytics/utils/loss.py中niou/n_iou/normalized_ioubbox loss 分支适用任务:目标检测、实例分割中的 bbox 回归分支支持配置:niou、n_iou、normalized_iou一、本文简介本文介绍 YOLO11 中已经接入的 2024 年 N-IoU bbox 回归 Loss。N-IoU 的核心创新是:在普通 IoU 重叠约束外加入归一化中心距离项,并根据当前 IoU 质量动态调节距离惩罚强度,使低重叠框在训练早期也能获得更有效的定位信号。当前仓库中,N-IoU 通过box_loss