我想分别从文件夹/img
和/mask
加载所有图像。数据结构可以如下所示:
data
img
0.png
1.png
2.png
3.png
...
mask
label_0.png
label_1.png
label_2.png
...
希望获得帮助。
答案 0 :(得分:1)
如果要从两个文件夹加载所有图像,则可以尝试cv2
import cv2
img = []
for i in range(n): # n = number of images in img folder
img_path = f'~data\img\{i}.png' # replace ~ with full path
img.append(cv2.imread(img_path))
for i in range(n): # n = number of images in mask folder
img_path = f'~data\mask\lable_{i}.png' # replace ~ with full path
img.append(cv2.imread(img_path))
答案 1 :(得分:1)
如果您的Python是3.4+,
您可以使用pathlib
获得具有相同扩展名的文件列表。
from pathlib import Path
# *.png
result = list( Path('./data/').rglob('*.[pP][nN][gG]') )
print(result)
结果:
[PosixPath('data/img/0.png'),
PosixPath('data/img/0.png'),
PosixPath('data/img/0.png'),
...
PosixPath('data/mask/label_0.png'),
PosixPath('data/mask/label_1.png'),
PosixPath('data/mask/label_2.png'),
...
]