如何转换灰度png透明热图?



Python 3不支持heatmap包,cv2不支持以下带有alpha通道的PNG图像:

cv2.applyColorMap(img, cv2.COLORMAP_JET)

我想将灰度PNG图像转换为热图;换句话说,将较暗的像素涂成蓝色,将较亮的像素涂成红色。

每个像素的透明度应该不受影响。

尝试使用matplotlib.pyplot.get_cmap.

colormap = plt.get_cmap('plasma')
heatmap = (colormap(image) * 2**16).astype(np.uint16)[:,:,:3]
heatmap = cv2.cvtColor(heatmap, cv2.COLOR_RGB2BGR)

您可以根据您想要的输出选择颜色映射。

最新更新