我正在从由样式传输网络创建的 NumPy 数组创建图像。
output = net.forward()
输出是来自网络处理的重新归一化:
output = output.reshape((3, output.shape[2], output.shape[3]))
output[0] += 103.939
output[1] += 116.779
output[2] += 123.680
output /= 255.0
output = output.transpose(1, 2, 0)
当我用 显示这个时cv2.imshow
,我得到了正确的图像。现在我尝试将其转换为图像文件以进行保存和显示;首先,我将图像重新缩放到 0 - 255 整数范围:
output = (output * 255).astype(np.uint8)
然后保存它:
cv2.imwrite(path + "/" + "Test_Out" + '.jpg', output)
后一张图像有我无法解释的颜色伪影。(我没有足够的声誉来显示图像。)
任何想法如何正确显示 NumPy 数组?