在单个图像上评估Pytorch torchvision的简单方法

在单个图像上评估Pytorch torchvision的简单方法,pytorch,torchvision,Pytorch,Torchvision,我有一个关于Pytorch v1.3、torchvision v0.4.2的预先培训模型,如下所示: 进口PIL、火炬、火炬视觉 加载并规范化图像 img_文件=./robot_image.jpg img=PIL.Image.openimg\u文件 img=火炬视觉.transforms.ToTensorimg img=0.5+0.5*img-img.mean/img.std 加载预先训练的网络并计算其预测 alexnet=torchvision.models.alexnetpretrained

我有一个关于Pytorch v1.3、torchvision v0.4.2的预先培训模型,如下所示:

进口PIL、火炬、火炬视觉 加载并规范化图像 img_文件=./robot_image.jpg img=PIL.Image.openimg\u文件 img=火炬视觉.transforms.ToTensorimg img=0.5+0.5*img-img.mean/img.std 加载预先训练的网络并计算其预测 alexnet=torchvision.models.alexnetpretrained=True 我想测试这张图像,但出现了一个错误:

解毒 RuntimeError:四维权重64 3 11应该是四维输入,但得到的是大小为[3741435]的三维输入
让模型评估单个数据点的最简单、最惯用的方法是什么

AlexNet期望一个4维张量,大小为批次大小x通道x高度x宽度。你提供了一个三维张量

要将张量更改为1,3741435大小,只需添加以下行:

img = img.unsqueeze(0)

您还需要对图像进行下采样,因为AlexNet需要输入224x224的高度和宽度。

AlexNet需要一个批量大小x通道x高度x宽度的四维张量。你提供了一个三维张量

要将张量更改为1,3741435大小,只需添加以下行:

img = img.unsqueeze(0)
您还需要对图像进行下采样,因为AlexNet需要输入224x224的高度和宽度