我需要使用
的返回值viz.visualize_image_attr(fa_attr_without_max[0].cpu().detach().permute(1, 2, 0).numpy(), sign="all", title="Integrated Gradients")
作为图像。
该方法返回:
2-element tuple of *figure, **axis*
;他们的数据类型是 matplotlib.pyplot.figure
我尝试了 plt 并搜索将元组转换为图像,但没有找到结果
您应该能够使用 matplotlib.pyplot.savefig
from matplotlib import pyplot as plt
example = (x, y) #Assume these are matplotlib figures returned from your func
example[0].savefig('foo.png')
example[1].savefig('foo2.pdf')
看看这个例子作为额外的知识:
`u, x = viz.visualize_image_attr_multiple(
np.transpose(attributions_ig_nt.squeeze().cpu().detach().numpy(), (1,2,0)),
np.transpose(transformed_img.squeeze().cpu().detach().numpy(), (1,2,0)),
["original_image", "heat_map"],
["all", "positive"],
#cmap=default_cmap,
cmap="viridis",
show_colorbar=True)`
`u.savefig('foo.png') `
x 是“numpy.ndarray”并且没有属性“savefig”。
x 有以下信息:
`array([<Axes: >, <Axes: >], dtype=object)`