首页 > 解决方案 > fromPixel 根据平台产生不同的张量

问题描述

我正在使用此代码片段将图像加载到张量中

var img = document.getElementById("myImage");  
var example =tf.fromPixels(img);
example = tf.image.resizeBilinear(example, [150, 150], align_corners=true);
example = example.toFloat().div(tf.scalar(255));
example = example.reshape([1, 150, 150, 3]); 
example.print()

当使用 tensorflow.js 中的某个模型对图像进行分类时,我意识到我得到的 softmax 输出略有不同,具体取决于我运行它的位置(例如我的笔记本电脑与我的像素 3 手机)。

进一步调试,我意识到我从 tf.fromPixels() 获得的张量值因平台而略有不同。

这是可以预料的吗?任何人都知道为什么会出现这种情况以及如何防止这种情况发生?

标签: tensorflow.js

解决方案


tf.fromPixels利用HTMLCanvasElement。浏览器倾向于使用不同的图像处理引擎等。因此,类似的画布元素可以根据系统产生不同的值。

更多信息:


推荐阅读