下面的代码几乎可以正常工作,但输出的图像最白的实际上变成了黑色.我不确定我做错了什么.在示例图像中,黑色部分是山顶,这实际上应该是白色的.此外,我正在使用全范围归一化65535,如果我try 使用255,图像都是黑色的.我需要能够使用完整的65535和255.
rgb_elevation = PIL.Image.open(BytesIO(images_array[key]))
rgb_data = np.array(rgb_elevation)
r = rgb_data[..., 0]
g = rgb_data[..., 1]
b = rgb_data[..., 2]
decoded_data = -10000 + ((r * 256 * 256 + g * 256 + b) * 0.1)
im = np.array(decoded_data)
im2 = ((im - im.min()) / (im.max() - im.min()) * 65535).astype(np.uint16)
outimage = Image.fromarray(im2)
outimage.save(save_path)