python - 在tensorflow.js中, reshape 张量的推荐方法是什么?

标签 python tensorflow tensorflow.js

我目前正在努力通过 tensorflow.js 在浏览器上运行经过 keras 训练的模型。在传递到我的模型之前,我必须将图像的大小减小到 48x48,因为我训练的所有数据都是这个大小。我已经使用以下方法将网络摄像头快照的大小减小到 48x48:

let imgclone = tf.image.resizeBilinear(imgmod, [48,48], true).toFloat(); 

这使我能够正确绘制到 Canvas 上,并在较小的 Canvas 上获得实时缩小尺寸的网络摄像头流。然后我将快照传递给我的模型,但收到以下错误:

expected conv2d_1_input to have shape [null,48,48,1] but got array with shape [1,48,48,3].

所以我只是不确定使用tensorflow.js时获得最终形状张量的正确方法。我确实尝试使用 tf.reshape(preprocedimg, [null, 48, 48, 1]) 但当然这只是修改了形状并提供了我的尺寸不匹配的错误。

打算继续在 Google 上搜索,但我想我也会在这里发帖。如果您能提供任何信息,我们将不胜感激!

最佳答案

由于你想获得形状为 48, 48, 1 的张量,因此可以使用 tf.slice

  tensor.slice([0,0,0], [48, 48,1])

关于python - 在tensorflow.js中, reshape 张量的推荐方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54311602/

相关文章:

python - 建议的 GA 运营商解决 TSP 问题?

python - 如何获取 Keras 模型中 tensorflow 输出节点的名称?

python - Keras 值错误 : input 0 is incompatible with layer flatten_11

javascript - Tensorflow.js LSTM 时间序列预测

javascript - Tensorflow.js SymbolicTensor 不被接受为输入

python - Python 的 pickle 是否以 r+b 模式工作?

python - 使用自定义数据生成器拟合具有大量数据的 Keras 模型

python - 如何在 Jinja 中实现类似 Django 的标签

tensorflow - Keras 前向传递(带 dropout)

javascript - 如何在tensorflow.js中 chop coco SSD模型?