我正在使用来自https://github.com/haroonshakeel/tensorflow-yolov4-tflite.
当我将Yolov4.weights转换为tflite时没有错误,但当我切换到Yolov4-tiny.weights时,我得到了一个类似的错误
conv_weights = conv_weights.reshape(conv_shape).transpose([2, 3, 1, 0])
ValueError: cannot reshape array of size 372388 into shape (256,256,3,3)
有人知道如何解决这个问题吗?谢谢
我通过两次更改解决了它;替换类名并安装特定版本的tensorflow cpu(2.3.0(
- 在我的案例中,我在第14行更改了
core/config.py
文件,其中包含以下代码:
__C.YOLO.CLASSES="data/classes/coco.names";
将coco.name替换为custom.name,就像一样
__C.YOLO.CLASSES="data/classes/custom.names";
然后我在./data/classes
目录中创建了这个新文件custom.names
包含我的新自定义类的名称,而不是默认的COCO类。
- 我更新了我的pip3版本然后为cpu安装tensorflow 2.3.0rc2版本:
pip3 install --upgrade pip
pip3 install tensorflow-cpu==2.3.0rc2
这为我解决了问题。
附言:我使用gpu(T4(在colab上构建了我的模型,但我在本地机器上测试/使用了这个模型没有gpu。