【发布时间】:2018-09-19 19:03:28
【问题描述】:
我在训练模型时使用Tensorflow's DecodeJpeg 读取图像。为了在 android 设备上使用相同的方法,我使用 DecodeJpeg 为 android 编译了带有 Bazel 的 Tensorflow。
我尝试在我的桌面上读取相同的图像,这是一台运行 Windows 的 x86_64 机器。我在默认值的图像上运行DecodeJpeg 方法,dct_method 设置为''、INTEGER_FAST、INTEGER_ACCURATE。
我在arm64 设备上为相同的图像做了同样的事情。但是,在相同的设置下,同一图像的像素值存在显着差异。
例如,在 (100,100,1) 处,桌面上的值为213,而在arm64 上为204。
如何确保这两个设备的像素值相同?[![这是我使用的图像][1]][1]
更新:
在 (100,100) 的 Gimp 上,像素值为 (179,203,190)
对于dct_method 设置为INTEGER_FAST,x86_64 上(100,100) 的值为(171, 213, 165),arm 上为(180, 204, 191)
对于dct_method 设置为INTEGER_ACCURATE,x86_64 上(100,100) 的值为(170, 212, 164),arm 上为(179, 203, 190)
它是(170, 212, 164) 和PIL,这也是我用cv2.imread 得到的。
【问题讨论】:
标签: android tensorflow arm libjpeg