Python 2.7 显示灰色图像和二值图像

Python 2.7 显示灰色图像和二值图像,python-2.7,numpy,matplotlib,computer-vision,Python 2.7,Numpy,Matplotlib,Computer Vision,我有一个灰度图像和一个二值图像,我想用hstack并排打印它们。看起来有一种调整使得二进制变暗。有人面临这个问题吗 这是我的密码 O = (self.img >= t) * 1 I = img both = np.hstack((I, O)) imshow(both, cmap='gray') show() 这是为了展示一个与您的案例有所不同的案例,我不知道它的数据。我怀疑数组“O”中的所有值都是零,因此,绘图显示为黑色窗格 import numpy as np import mat

我有一个灰度图像和一个二值图像,我想用hstack并排打印它们。看起来有一种调整使得二进制变暗。有人面临这个问题吗

这是我的密码

O = (self.img >= t) * 1
I = img
both = np.hstack((I, O))
imshow(both, cmap='gray')
show() 

这是为了展示一个与您的案例有所不同的案例,我不知道它的数据。我怀疑数组“O”中的所有值都是零,因此,绘图显示为黑色窗格

import numpy as np
import matplotlib.pyplot as plt

fig=plt.figure(figsize=(8, 4))

# make up some data for demo purposes
raw = np.random.randint(10, size=(6,6))
# apply some logic operatioin to the data
O = (raw >= 5) * 1   # get either 0 or 1 in the array
I = np.random.randint(10, size=(6,6))  # get 0-9 in the array

# plot each image ...
# ... side by side
fig.add_subplot(1, 2, 1)   # subplot one
plt.imshow(I, cmap=plt.cm.gray)

fig.add_subplot(1, 2, 2)   # subplot two
# my data is OK to use gray colormap (0:black, 1:white)
plt.imshow(O, cmap=plt.cm.gray)  # use appropriate colormap here
plt.show()
生成的图像:


问题中的代码工作正常

import matplotlib.pyplot as plt
import numpy as np

img = plt.imread("https://i.stack.imgur.com/oos05.png")[88:456,82:326]
t = 0.5

O = (img >= t) * 1
I = img
both = np.hstack((I, O))
plt.imshow(both, cmap='gray')
plt.show() 

该代码既不适用于提问者,也不适用于我。请解释一下你的代码是怎么写的worked@RahatZaman:此代码适用于Python 3.7.2和最新matplotlib
img
在[0,1]范围内,所以
O
是0和1是正确的。@RahatZaman我想你误解了我的答案。我展示了一个完整的可运行代码,它可以按原样运行。也就是说,问题中的代码确实有效;当然,这取决于输入图像。