从文件夹中随机选择多个文件并在cv2中读取

2024-05-22 09:36:47 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在用Python构建一个CNN,我的数据集有大约14k个图像和6个标签,因此运行一个神经网络需要很多时间。我所有的标签都在不同的文件夹中,以标签名作为文件夹名,我想从每个文件夹中随机选择500张图片由CNN运行。我写了下面的代码

imageset = []
labels =[]
mountain = os.listdir('../folder/mountain')
glacier = os.listdir('../folder/glacier')

filenames = random.sample(mountain, 500)

for i in filenames :
    image = cv2.imread('../folder/mountain/'+i,cv2.IMREAD_COLOR)
    image_size =cv2.resize(image,(50,50))
    imageset.append(np.array(image_size))
    labels.append(3)

#for fname in filenames:
train_images =np.array(imageset)
print(train_images.shape)

因为我从文件夹中随机选择了100张图片,print(train_images.shape)应该给我(500,50,50,3)。但它显示的是图像的实际数量(3000,50,50,3)。你知道吗


Tags: 图像image文件夹labelsos图片train标签