mja*_*kie 7 conv-neural-network pytorch
我试图转换CNN Keras模型使用FER2013数据集PyTorch模型情感识别和我有以下错误:
Traceback (most recent call last):
File "VGG.py", line 112, in <module>
transfer.keras_to_pytorch(keras_network, pytorch_network)
File "/home/eorg/NeuralNetworks/user/Project/model/nntransfer.py", line 121, in keras_to_pytorch
pytorch_model.load_state_dict(state_dict)
File "/home/eorg/.local/lib/python2.7/site-packages/torch/nn/modules/module.py", line 334, in load_state_dict
own_state[name].copy_(param)
RuntimeError: inconsistent tensor size at /b/wheel/pytorch-src/torch/lib/TH/generic/THTensorCopy.c:51
Run Code Online (Sandbox Code Playgroud)
我知道错误与图像的形状有关。在 Keras 中,输入大小定义为 48 x 48。
我的问题是如何在 PyTorch 模型中定义我的图片是 48x48 的形状?我在文档和示例中找不到这样的功能。
任何帮助都会有用!
blc*_*ird 13
为了自动调整输入图像的大小,您需要定义所有图像经过的预处理管道。这可以通过torchvision.transforms.Compose()(Compose docs)来完成。要调整图像大小,您可以使用torchvision 包中的torchvision.transforms.Scale()(Scale docs)。
请参阅文档:
注意,在文档中,它表示.Scale()已弃用,.Resize()应改为使用。 调整文档大小
这将是一个最小的工作示例:
import torch
from torchvision import transforms
p = transforms.Compose([transforms.Scale((48,48))])
from PIL import Image
img = Image.open('img.jpg')
img.size
# (224, 224) <-- This will be the original dimensions of your image
p(img).size
# (48, 48) <-- This will be the rescaled/resized dimensions of your image
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
17984 次 |
| 最近记录: |