Как загрузить изображения в одну папку в Pytorch? - PullRequest
0 голосов
/ 27 февраля 2019

Я хочу загрузить все изображения из папки /img и /mask соответственно.Структура данных может быть показана следующим образом:

data
    img
        0.png
        1.png
        2.png
        3.png
        ...
   mask
       label_0.png
       label_1.png
       label_2.png
       ...

Надеемся на помощь.

Ответы [ 2 ]

0 голосов
/ 27 февраля 2019

Если ваш 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'),
 ...
]
0 голосов
/ 27 февраля 2019

Если вы хотите загрузить все изображения из двух папок, попробуйте 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))
...