我尝试创建自己的图像数据集进行机器学习。
我认为的工作流程如下:
①将所有图像文件作为数组加载到文件夹中。
②标记已加载的图像
③将已加载的图像文件拆分为image_data和label_data。
④最后,将image_data拆分为image_train_data和image_test_data,并将label_data拆分为label_train_data和label_test_data。
但是,第一步(①)进行得并不顺利。
如何有效加载所有图像数据?
如果您根据此工作流程实现用于机器学习的图像数据集,该如何处理?
我写了以下代码。
cat_im = cv2.imread("C:\\Users\\path\\cat1.jpg")
但是,我被迫写\ cat1.jpg,\ cat2.jpg,\ cat3.jpg .....吗?
答案 0 :(得分:0)
## you can find all images like extenstion
import os,cv2
import glob
all_images_path= glob.glob('some_folder\images\*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))