相关疑难解决方法(0)

有没有办法将pyplot.imshow()对象转换为numpy数组?

我需要可视化2D numpy数组.我正在使用pyplot.这是代码:

import cv2 as cv
import numpy as np
from matplotlib import pyplot

img = pyplot.imshow( radiance_val )
#radiance_val is a 2D numpy array of size = ( 512, 512 ) 
#filled with np.float32 values

pyplot.show()
Run Code Online (Sandbox Code Playgroud)

我按预期获得输出.

现在我的问题是,有没有办法将上面的代码中的"img"从pyplot类型转换为numpy类型.我需要这个,以便我可以将可视化加载为opencv图像并对其执行进一步处理.我正在使用python 2.7,32位.

请帮助

谢谢


编辑1:在Thorsten Kranz的解决方案之后

import numpy as np
import cv2 as cv
import matplotlib.pyplot as plt
import PIL
from cStringIO import StringIO

frame1 = plt.gca()
frame1.axes.get_xaxis().set_visible(False)
frame1.axes.get_yaxis().set_visible(False)
plt.imshow(np.random.random((10,10)))

buffer_ = StringIO()
plt.savefig( buffer_, format = "png", bbox_inches = 'tight', pad_inches …
Run Code Online (Sandbox Code Playgroud)

python opencv numpy matplotlib

5
推荐指数
2
解决办法
8768
查看次数

标签 统计

matplotlib ×1

numpy ×1

opencv ×1

python ×1