我尝试为机器学习创建自己的图像数据集。
我认为的工作流程如下:
(1(将所有图像文件作为数组加载到文件夹中。
(2(标记加载的图像
(3(将加载的图像文件拆分为image_data和label_data。
(4(最后,image_data拆分为image_train_data和image_test_data,label_data拆分为label_train_data和label_test_data。
但是,第一步((1((并不顺利。
如何有效地加载所有图像数据?
如果您根据此工作流程实现用于机器学习的图像数据集,您将如何处理它?
我写了以下代码。
cat_im = cv2.imread("C:\Users\path\cat1.jpg")
但是,我是否被迫编写 \cat1.jpg 、\cat2.jpg 、\cat3.jpg....?
## you can find all images like extenstion
import os,cv2
import glob
all_images_path= glob.glob('some_folderimages*png') ## it gives path of images as list
## then you can loop over all files
loaded_images = []
for image_path in all_images_path:
image = cv2.imread(image_path)
loaded_images.append(image)
## lets assume your labels are just name of files and its like cat1.png,cat2.png etc
labels = []
for image_path in all_images_path:
labels.append(os.basename(image_path))