Toybrick

darknet mobilenet转换

昆仑

注册会员

积分
187
楼主
发表于 2020-5-14 17:32:39    查看: 6432|回复: 3 | [复制链接]    打印 | 只看该作者
你好,我在转换darknet版mobilenet出现错误,麻烦看看,报错信息:
T Traceback (most recent call last):
T   File "rknn/api/rknn_base.py", line 381, in rknn.api.rknn_base.RKNNBase.load_darknet
T   File "rknn/base/RKNNlib/converter/convert_darknet.py", line 471, in rknn.base.RKNNlib.converter.convert_darknet.Converter.load_blobs
T   File "rknn/base/RKNNlib/converter/convert_darknet.py", line 215, in rknn.base.RKNNlib.converter.convert_darknet.Convolution_Blob_Assign.assign
T   File "<__array_function__ internals>", line 6, in reshape
T   File "/home/mike/anaconda3/envs/rk1808/lib/python3.6/site-packages/numpy/core/fromnumeric.py", line 301, in reshape
T     return _wrapfunc(a, 'reshape', newshape, order=order)
T   File "/home/mike/anaconda3/envs/rk1808/lib/python3.6/site-packages/numpy/core/fromnumeric.py", line 61, in _wrapfunc
T     return bound(*args, **kwds)
T ValueError: cannot reshape array of size 40607 into shape (384,384,3,3)

在模型的cfg中深度可分离卷积是这样定义的:
[convolutional]
groups=96
filters=96
size=3
pad=1
stride=2
batch_normalize=1
activation=relu

谢谢~



回复

使用道具 举报

jefferyzhang

版主

积分
13577
沙发
发表于 2020-5-14 17:58:00 | 只看该作者
1.请查看rknn-toolkit文档的troubleshoot文档,有介绍dw卷积如何处理。
2. 我们不需要dw卷积来牺牲精度提高速度,我们npu普通卷积速度更快,精度跟高
3. 你这个错不确定是不是dw卷积造成的,更像是模型哪里有问题 40607 !=  (384,384,3,3) ,可以排查下
回复

使用道具 举报

昆仑

注册会员

积分
187
板凳
 楼主| 发表于 2020-5-14 18:42:54 | 只看该作者
jefferyzhang 发表于 2020-5-14 17:58
1.请查看rknn-toolkit文档的troubleshoot文档,有介绍dw卷积如何处理。
2. 我们不需要dw卷积来牺牲精度提高 ...

你好,我查了一下troubleshoot,没看到相关信息。dw卷积在我的模型中精度是没问题的,在gpu中跑也能加速。刚开始用RK,所以不了解。这个cfg和weights是对应的,在darknet中能正常加载推理。我不知道是不是rknn不能识别groups这个项,无法按dw卷积转换,仅是猜测,不对见谅。
回复

使用道具 举报

jefferyzhang

版主

积分
13577
地板
发表于 2020-5-15 08:22:38 | 只看该作者
昆仑 发表于 2020-5-14 18:42
你好,我查了一下troubleshoot,没看到相关信息。dw卷积在我的模型中精度是没问题的,在gpu中跑也能加速 ...

仔细看troubleshoot文档,都有说明,最后一章
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

产品中心 购买渠道 开源社区 Wiki教程 资料下载 关于Toybrick


快速回复 返回顶部 返回列表