首页 > 解决方案 > Docker 容器中的 CustomVision 分类:无法提供形状的值

问题描述

我在 CustomVision 中创建了一个分类模型并将其导出到 Dockerfile (Linux)。该模型在从 CustomVision GUI 内部测试时工作正常,但在连接到 docker 容器并调用它时

curl -X POST http://127.0.0.1/image -F imageData=@some_file_name.jpg

我总是收到类似的错误

“错误:无法预处理图像以进行预测。无法为张量‘Placeholder:0’提供形状 (1, 227, 227, 3) 的值,其形状为‘(?, 224, 224, 3)’”

即使 some_file_name.jpg 是模型训练的文件之一,也是如此……

观察:我们在 18 年 8 月创建并导出到 Dockerfiles 的模型工作正常。当现在修改这些模型(例如从训练数据中删除一个文件)并重建模型时,它会像上面提到的那样失败。与 8 月份相比,现在导出模型时创建的 zip 文件的大小几乎翻了一番。没有更改任何配置,模型仍然构建在同一个数据中心上。

非常感谢任何提示/帮助。

标签: azure-cognitive-services

解决方案


在导出的 app 文件夹中有一个文件 predict.py。换行,

network_input_size = 227 到 network_input_size = 224

然后我重建并重新运行了我的 docker 容器,它工作了。


推荐阅读