在matplotlib中添加两个伪彩色图

时间:2015-05-30 16:08:16

标签: python opencv matplotlib plot

我有两个伪彩色图,一个从红色(1)到白色(0)到蓝色(-1),一个从绿色(1)到白色(0)。

import matplotlib.pyplot as plt
import numpy as np

a = np.random.random((16,16))
b = 2*np.random.random((16,16)) - 1

plt.pcolor(a, vmax =1.0, vmin = 0.0, cmap = 'bwr')
plt.savefig("bwr.png")
plt.pcolor(b, vmax =1.0, vmin = -1.0, cmap = 'Greens')
plt.savefig("Greens.png")

我希望能够添加它们以获得一个图像,如果a为1且b为1,则为黄色,如果a为1且b为-1,则为青色。如果两者都为零,那么我应该变白。我尝试使用opencv2添加pcolors图:

import cv2
import numpy as np

r = cv2.imread('bwr.png')
mi = cv2.imread('Greens.png')
combo = cv2.addWeighted(r, 0.55, mi, 0.55, 0.2)

cv2.imwrite('combo.png',combo)
cv2.imshow('combo',combo)
cv2.waitKey(0)
cv2.destroyAllWindows()

但它没有产生所需的输出:

enter image description here

关于如何做到这一点的任何想法?

0 个答案:

没有答案