Yolov3—tiny 单个目标检测模型转换出错

yolov3—tiny 单个目标检测模型转换出错(多个目标转换没有问题)
I Convert 21 convolutional
Traceback (most recent call last):
File “convertdarknet.py”, line 34, in
File “convertdarknet.py”, line 27, in main
File “acuitylib/vsi_nn.py”, line 130, in load_darknet
File “acuitylib/converter/convert_darknet.py”, line 517, in converte
File “acuitylib/converter/convert_darknet.py”, line 583, in build_graph
File “acuitylib/converter/convert_darknet.py”, line 418, in assign
File “numpy/core/fromnumeric.py”, line 292, in reshape
File “numpy/core/fromnumeric.py”, line 56, in _wrapfunc
ValueError: cannot reshape array of size 767781 into shape (256,384,3,3)
[639427] Failed to execute script convertdarknet
这个是转换程序的问题?

@zzpfox 你的shape是 (256,384,3,3) 的话,那你的array size 应该是88473,现在你的array size是767781.是没办法reshape成(256,384,3,3).

你说的这个我当然知道,问题是我用的cfg文件是在原版基础上,只修改了classnum和最后一个filters的参数(应该都有两处),改成1和18,这样改有问题么?训练后的模型用dark测试没问题,转换就有问题,感觉就是针对单个目标,超过一个就没问题,不知道你们测过没有(针对单个目标)?darkconvert也无法查看修改,只能咨询下情况,谢谢

@zzpfox目前没有测试过单物体的检测,从原理上来说,单物体只是检测的class为1的多物体检测,应该是没有问题,可以diff一下,把你的修改的地方贴出来么

很简单,yolov3-tiny.cfg里: 把所有“classes=80”替换为1 ;
把所有“filters=255”替换为18;
Coco训练数据中的lable只留下一类,比person,然后训练,训练之后用npu sdk工具转换(转换第一步就会出现这个错误)。

@zzpfox 只修改了这两个部分的话,应该是正确的.我们这边确实没有试过训练单类别的

嗯,就是如此神奇,可以试一下,可能是个bug

@zzpfox 如果需要我们这边测试,那就需要一段时间,需要安排进计划里面

通过npu sdk生成的代码与aml_npu_app不一致,是否说只要在aml_npu_app代码基础上修改j即可,如将classes,还有(class’es+5)*3这样的参数修改了,然后把nb模型替换掉,这样编译就可以用了么?

@zzpfox 参考我们的文档操作把




前面三个是对仓库和SDK的详细介绍,最后一个文档是如何替换你自己训练的模型的

我看了一下,yolov3按照文档操作应该没问题,文件都能对应上,yolov3_tiny的demo里include里面没有vnn_pre_process. h vnn_post_process. h等文件,之前我也是按照文档操作来的,但到替换文件这一步就对不上了,yolov3和yolov3tiny在Demo上不一致,但用npu转换的出来文件一样,所以按文档操作走不下去了,所以想确认下方法

@zzpfox 你参考yolov3的替换方式替换yolo-tiny就行,如果有问题,再在这里反馈

参考了,正如我说的,文档中说替换vnn_pre_process. h vnn_post_process. h等头文件,但这两个头文件在yolov3_tiny的demo里include文件夹下根本不存在,谈何替换呢?您可以看下文件夹,确实不一样的(ps:yolov3_tiny的代码是不是没有和yolov3同步更新,所以出现这样的情况)

@zzpfox 我这边看了, 应该是这个目录下的代码没改正过来,你再等等,我今天之内会有一个提交修复这个

1 Like

好的,感谢您回复这么及时,不然我们自己去修改,很难保证不出现其他问题

@zzpfox 代码修正以后,我会在这里告诉你

今天会修复这个问题么,还是想尽快测试一下,谢谢

@zzpfox 正在处理中,稍后给你补丁

@zzpfox

你可以先从我这里拿补丁过去,合并进去主仓库之前需要大量测试的,目前我这边做了一些简单的测试.

好的,谢谢!官方模型正常能跑就行,应该就不会有什么问题