如何在python中显示一个文件夹中的多个图像



我正在尝试使用k-means对图像进行聚类。

我的文档中有一个文件夹,里面有30个图像。首先,在开始集群代码之前,我试着只读取每个图像。但是,由于某些原因,以下代码只输出一个图像:

img_dir="C:/Users/User/Documents/MATLAB/attempt6images"
data_path=os.path.join(img_dir,'*g')
files=glob.glob(data_path)
data=[]
for f1 in files:
img=cv2.imread(f1)
data.append(img)

plt.imshow(img)

我希望看到所有30个图像都存储在代码中,以便以后可以对它们进行聚类。为什么我运行此代码时只显示一个图像?

尝试此代码

from matplotlib import pyplot
from matplotlib.image import imread
folder = 'train/'     #folder where your photos are store
# plot first few images
for i in range(9):
# define subplot
pyplot.subplot(330 + 1 + i)
x= folder + 'cat.' + str(i) + '.jpg'
# load image pixels
image = imread(x)
# plot raw pixel data
pyplot.imshow(image)

显示图形

pyplot.show((

我有点晚了尝试以下代码:
img_dir="C:/Users/User/Documents/MATLAB/attempt6images"
all_files=os.listdir(img_dir)
data_path = [os.path.join(img_dir + "/" + i) for i in all_files]
k=0
for i in data_path:
k=k+1
plt.subplot(3,2,k) 
plt.imshow(imread(i))
plt.show()

注意:如果显示6个图像,则子画面将具有前2个参数(3,2(,即3列和2行。对于4个图像,它将是(2,2(

最新更新