近日,在使用谷歌新推出来的一个网络EfficientDet进行目标检测训练自己的数据集的时候,出现了如下错误:

其中项目开源地址是:https://github.com/toandaominh1997/EfficientDet.Pytorch

  

上面截图中的1和2代表我的类别名称。读者可以忽略不管。

No boxes to NMS
No boxes to NMS
No boxes to NMS
No boxes to NMS
No boxes to NMS
No boxes to NMS
No boxes to NMS
No boxes to NMS
No boxes to NMS
No boxes to NMS
No boxes to NMS
No boxes to NMS
79/79
mAP:
1: 0.0
2: 0.0
avg mAP: 0.0
No boxes to NMS
79/79
mAP:
1: 0.0
2: 0.0
avg mAP: 0.0
30 epoch: start training....

最开始出现这个错误的时候我并没有管,我以为是因为模型刚开始训练效果不太行,直到后面运行到30 epoch时,依旧是这个错误并且mAP还是0.0,我就知道肯定哪个环节出现了问题。但是这个错误百度基本没有,于是我在issues里面查看是否有人遇到了相同的问题

  

尽管有人遇到了相同的问题,但是并没有什么好的解决方案。

几个小时过后,我突然灵机一动,会不会是我训练时导入的预训练的问题。如下面这行代码所示:

parser.add_argument('--network', default='efficientdet-d7', type=str,
help='efficientdet-[d0, d1, ..]')

因为我在项目地址里面看到博主提到这个项目已经支持efficientdet-d0--- efficientdet-d7,所以我当时就没多想,但是我后面把这行代码稍微改一下

parser.add_argument('--network', default='efficientdet-d1’, type=str,
help='efficientdet-[d0, d1, ..]')

这个问题就解决了,loss值也在下降了,mAP的值也不是0.0了。

  

  

  

总结:我也不知道到底什么原因引发了这个错误,但是我想我这个解决方案肯定不是唯一的解决方案,有可能只是对我本人有效,对于读者有没有效果我就不太清楚了,所以我这个解决方案仅供大家参考。

另外,在我解决掉这个错误后,我又在issues上发现了有大佬回答了这个错误。那就是降低torchvision的版本。

  

这个解决办法有没有效果我还没有尝试过,我在这里记录下来仅供读者参考。

错误:EfficientDet网络出现"No boxes to NMS"并且mAP:0.0的解决方案的更多相关文章

  1. 北京网络赛G BOXES 大模拟+BFS

    题目描述 Description There is a strange storehouse in PKU. In this storehouse there are n slots for boxe ...

  2. 解决 ASP.NET 编辑错误"CS0006: 未能找到元数据文件C:\WINDOWS\assembly\GAC_32\System.EnterpriseServices\2.0.0.0__b03f5f7f11d50a3a\System.EnterpriseServices.dll"

    问题背景: 公司最近给我配置了一台新Windows 7旗舰版的电脑,这几天一直在迁移文件,因为新电脑上安装Sqlserver r2失败,解决方法是要安装一个800+MB的安装包 由于最近手上事情比较多 ...

  3. sql server 2008 R2无法连接127.0.0.1报错 Server error:40(错误:53)

    在公司用sql server 2008 R2很好的,回家连接127.0.0.1就报错.sql server2008R2主机名和.都可以登录,连接127.0.0.1出错,在与 SQL Server 建立 ...

  4. 赢友网络通用框架V10.0.0(WinuAppSoft) 基础框架设计表

    /* * 版权所有:赢友网络(http://www.winu.net/) * 开发人员:新生帝(JsonLei) * 设计名称:赢友网络通用框架V10.0.0(WinuAppSoft) * 设计时间: ...

  5. Oracle 远程访问配置 在 Windows Forms 和 WPF 应用中使用 FontAwesome 图标 C#反序列化XML异常:在 XML文档(0, 0)中有一个错误“缺少根元素” C#[Win32&WinCE&WM]应用程序只能运行一个实例:MutexHelper Decimal类型截取保留N位小数向上取, Decimal类型截取保留N位小数并且不进行四舍五入操作

    Oracle 远程访问配置   服务端配置 如果不想自己写,可以通过 Net Manager 来配置. 以下配置文件中的 localhost 改为 ip 地址,否则,远程不能访问. 1.网络监听配置 ...

  6. C#反序列化XML异常:在 XML文档(0, 0)中有一个错误“缺少根元素”

    Q: 在反序列化 Xml 字符串为 Xml 对象时,抛出如下异常. 即在 XML文档(0, 0)中有一个错误:缺少根元素. A: 首先看下代码: StringBuilder sb = new Stri ...

  7. 创建或打开解决方案时提示"DotNetCore.1.0.1-SDK.1.0.0.Preview2-003131-x86"错误的解决方案

    提示"DotNetCore.1.0.1-SDK.1.0.0.Preview2-003131-x86"错误的解决方案: 1.检查是否有C:\Program Files (x86)\d ...

  8. 安装InfoPath 2013后 SharePoint 2010 出现 “找不到 Microsoft.Office.InfoPath, Version=14.0.0....” 的错误的解决方案

    1. 症状 您的SharePoint 2010的服务器是不是最近一直出现这个错误呢? Could not load file or assembly 'Microsoft.Office.InfoPat ...

  9. 1.MongoDB报错 Failed to connect 127.0.0.1:27017 Mongo运行错误

    1.Mongo运行错误:Failed to connect 127.0.0.1:27017 Mongo运行错误:Failed to connect 127.0.0.1:27017,reason:err ...

随机推荐

  1. nginx的进程结构

    nginx分为单进程和多进程,默认是多进程 进程架构: 父进程master process  子进程worker process和cache manager cache loader 高可用性 高可靠 ...

  2. javabst1an

    (单选题)下列概念中不包括任何实现,与存储空间没有任何关系的是() A)类 B)接口 C)抽象类 D)对象 正确答案为:B解析:接口是一种只含有抽象方法或常量的一种特殊的抽象类,因为接口不包括任何实现 ...

  3. MySQL初次安装配置及修改密码

    安装前的准备工作: 下载完后,我们将 zip 包解压到相应的目录,这里我将解压后的文件夹放在 C:\mysql-8.0.11 下. 接下来我们需要配置下 MySQL 的配置文件 打开刚刚解压的文件夹 ...

  4. GORM CRUD指南

    CRUD通常指数据库的增删改查操作,本文详细介绍了如何使用GORM实现创建.查询.更新和删除操作. CRUD CRUD通常指数据库的增删改查操作,本文详细介绍了如何使用GORM实现创建.查询.更新和删 ...

  5. Codeforces_837

    A.扫一遍. #include<bits/stdc++.h> using namespace std; int n; string s; int main() { cin >> ...

  6. num10---适配器模式

    1.类适配器 Adapter类,通过继承 被适配的类,实现目标类的接口,完成适配. 分析: java 单继承,所以适配器类 需要继承 被适配类,这就要求目标类必须是接口,有一定局限性. 被适配类的方法 ...

  7. SpingBoot错误信息处理及原理

    SpringBoot错误信息处理机制 在一个web项目中,总需要对一些错误进行界面或者json数据返回,已实现更好的用户体验,SpringBoot中提供了对于错误处理的自动配置 ErrorMvcAut ...

  8. Imagine— 让图片再小一点点

    文章选自我的博客:https://blog.ljyngup.com/archives/267.html/ 再次祭出神奇的Github 这次给大家介绍的是一款神奇的图片压缩软件,以质量的微小损失换取大量 ...

  9. linux下命令的全称,方便记忆(转)-修改补充版

    su:Swith user  切换用户,切换到root用户 cat: Concatenate  串联(cat(Concatenate)命令的用途是连接文件或标准输入并打印.这个命令常用来显示文件内容, ...

  10. CentOS 7 GNOME桌面系统 网络配置

    问题概述:在学习Linux系统的过程中,在WORKSTATION 14 PRO上安装了CentOS 7 Linux虚拟机,安装过程一切正常,但在应用过程中无法连接网络: 具体问题:1. 通过 ip a ...