python - 将 2D 灰度重塑为 4D 以进行 Keras 模型推理
问题描述
我有一个预训练的 Keras 模型,我需要使用它来对原本为灰度格式的 512x 512 图像进行分类。Keras 模型的输入应该是形状 (None, 512, 512, 1)。.
我执行了以下代码:
model=load_model('model.h5')
img = Image.open('img.jpg')
img_array = np.array (img)
img_array = img_array/255
model.predict (img_array)
但是,我收到以下错误
检查输入时出错:预期 input_1 有 4 个维度,但得到了形状为 (512, 512) 的数组
我知道我需要将灰度图像重塑为 4D 以匹配所需的输入形状,但是,我不确定如何执行此操作以使图像保持其原始特征。如何正确地将灰度图像变成 4D?
谢谢。
解决方案
尝试重塑数组
img_array = img_array.reshape((1, 512, 512, 1))
这里第一个和最后一个维度分别是批量大小和通道
推荐阅读
- tensorflow - 尝试对 Tensorflow Serving Kubernetes pod 进行 gRPC 调用时获取 StatusCode.DEADLINE_EXCEEDED
- google-cloud-platform - GCP 经销商/MSP 能否在其结算报告中看到哪些项目分配给了他的哪些客户?
- javascript - 单击一个按钮时如何打开一个新窗口?
- html - 在特定字符前插入美元符号
- amazon-web-services - 为负载均衡器配置 AWS CPU 利用率指标
- javascript - 错误 [ERR_STREAM_DESTROYED]:在运行电子邮件阅读代码时流被破坏后无法调用 write
- linear-programming - 纸浆包中的整数线性程序生成错误
- git - Git 在远程仓库中只看到 master 分支
- r - 循环R中的字符向量
- powershell - 通过 Powershell 将 IIS 应用程序池配置为特定用户 MSA 帐户