mmdetection ValueError: need at least one array to concatenate解决方案
在mmdetection中有时候训练模型会出现ValueError: need at least one array to concatenate的错误,详情如下图所示。
很多人都说是mmdet/dataset下coco.py或voc.py中CLASSES设置与数据集对应不上,博主不以为然。因为在mmdetection2中,不需要到mmdet/dataset中修改CLASSES,只需要在训练配置文件中中设置一下就行了。config解释器会通过继承自动修改CLASSES的值,具体可见下图,或参考mmdetection2的使用教程从数据处理、配置文件到训练与测试(支持coco数据和pascal_voc数据)_万里鹏程转瞬至的博客-CSDN博客_mmdetection2https://hpg123.blog.csdn.net/article/details/124617894
只要配置文件中classes设置正确了,voc数据就不会出现上述的报错。
但是,coco数据集会因此数据转化时设置有误,而导致出现上述错误。博主的数据集只有shoot一个类别,在数据集转换时,通过下列方式在tools\dataset_converters\pascal_voc.py文件设置类别。【错误方式】
然后生成的coco数据存在问题,本来只有一个shoot类别的coco数据,结果出现了 20余个supercategory项目。这就是导致报错的根源。
在转换数据集时,需要通过在tools\dataset_converters\pascal_voc.py文件按照以下标准以下设置修改自定义类别
通过该方式生成的coco数据集才是严格正确的,其categories的格式如下图所示。如果是通过第三方项目生成的coco数据,则请检查categories内的数据与数据集的类别是否正常。
在修改coco数据集的错误后,现在mmdetection可以正常训练数据了。
mmdetection ValueError: need at least one array to concatenate解决方案相关推荐
- ValueError: need at least one array to concatenate
关键词 python 报错内容 ValueError: need at least one array to concatenate 原因 路径有误 可能入手的地方 1.检查下运行的py文件中写到的路 ...
- MMDet: ValueError: need at least one array to concatenate
文章首发及后续更新:https://mwhls.top/4051.html,无图/无目录/格式错误/更多相关请至首发页查看. 新的更新内容请到mwhls.top查看. 欢迎提出任何疑问及批评,非常感谢 ...
- 解决ValueError: need at least one array to concatenate
ValueError: need at least one array to concatenate 引发原因:从空数组进行连接会引发此错误 报错提示为: TFT_Dataset类报错相关部分源代码为 ...
- ValueError: could not broadcast input array from shape (*,*) into shape (*)
在将一个list转为np.array时出现如题错误. 错误原因: list中各元素的数据的shape不一致 解决办法: 1)方法1. 将list中的多个元素沿某个公共维度串联成一个张量,然后保存每个元 ...
- Keras前后尺寸一致却依然报错'ValueError: total size of new array must be unchanged'的原因
某些情况下我们需要对张量进行维度变换,一般可以通过调用以下两种方法实现: # 1. TensorFlow自带 tf.reshape(tensor, target_shape) # 2. (推荐)Ker ...
- python 报ValueError could not broadcast input array from shape或 Can‘t convert non-rectangular
python 报ValueError: could not broadcast input array from shape numpy报ValueError: could not broadcast ...
- numpy报ValueError: could not broadcast input array from shape
问题描述 在使用numpy将list转为array的时候报错 代码 a = np.array([[1,2],[3,4]]) b = np.array([[5,6,7],[8,9,10]]) c = [ ...
- ValueError: could not broadcast input array from shape(708,1016,3) into shape(1016,708,3)
在终端中打开model文件夹.输入sh 1.sh,运行1.sh文件. 出现报错信息: ValueError: could not broadcast input array from shape(70 ...
- ValueError: At least one stride in the given numpy array is negative解决方案
ValueError: At least one stride in the given numpy array is negative, and tensors with negative stri ...
最新文章
- 如何在Linux下安装Docker
- 技术新进展!谷歌AI部门宣布发现新技术以加速AI神经网络训练
- 比特币Cash Hard Fork辩论在压力测试后重新召开
- Mysql:is not allowed to connect to this MySQL server
- arcgis js api proxy java 版本配置
- 2.使用windows下的客户端连接虚拟机上的oracle连不上的时候的解决方案
- 100万“愤怒的小鸟”:中国手机开发者生存调查
- 力扣174. 地下城游戏
- 数据结构之线性表的基本C语言语法
- jsSIP-demo(完整源码加注释)
- Android聊天软件的开发
- php 极光推送别名数组,PHP使用极光推送-Go语言中文社区
- 建立个人腾讯云服务器
- 店盈通:新品牌如何活得更好、活得更久
- 物流公司的发出时间在哪里查询,快递单号查询方法
- 用公式编辑器将数学公式转为LaTeX代码
- python数据可视化程序_python数据可视化简易版
- 程序猿的自救 从零备考NSCA/CSCS 3 运动与训练的能量学
- 量子计算机应用于哪些领域,量子计算的应用领域
- 用CPU-Z查看内存插槽个数与频率