我有一个形状为(74, 743)的numpy数组,它代表了几秒钟人类语音的语谱图。我可以使用plt.subplots.matshow轻松地将其转换为matplotlib图,但我想知道是否可以将该图转换为原始的numpy数组?至少,matplotlib如何从任意形状的数组生成图像?
我正在尝试创建一个生成性的对抗性网络,它将生成光谱图的图像(这是由于该网络在图像生成方面的卓越性能)。然后,我想将这些光谱图图像转换为定量光谱图,即将曲线图转换为数值数组。
发布于 2019-06-25 18:21:00
您似乎想要将色彩映射表应用于2D数组。使用matplotlib工具可能如下所示
import numpy as np
from matplotlib.colors import Normalize
import matplotlib.cm as cm
data = np.random.rand(74, 743)
cmap = cm.viridis
norm = Normalize(data.min(), data.max())
output = cmap(norm(data))
print(output.shape)输出是一个形状(74, 743, 4)数组,值在0到1之间,表示RGBA颜色。
https://stackoverflow.com/questions/56750582
复制相似问题