Обработка изображений - Как сохранить список изображений и его метки в ndarray с горячим кодированием? - PullRequest
0 голосов
/ 03 октября 2018

У меня есть папка с 1976 учебными изображениями.Каждое изображение имеет форму (118,128,1) (изображения в оттенках серого).Я создал массив со всеми изображениями, как это:

import glob
import scipy
import cv2

images = [cv2.imread(path, 0) for path in glob.glob('rootDir/train/*.png')]
images = np.asarray(images)

, что дает:

images 
out[0]  array([[[ 38,  47,  51, ...,  53,  53,  46],
            [ 48,  49,  50, ...,  53,  50,  51],
            [ 48,  51,  53, ...,  54,  50,  51],
            ...,
            [ 59,  61,  57, ..., 194, 195, 200],
            [ 76,  71,  65, ..., 212, 212, 199],
            [ 81,  80,  77, ..., 179, 184, 197]],
            ....

images.shape
out[1]: (1976, 128, 118)

Теперь дело в том, что у меня есть метки изображений, хранящиеся в файле CSV в следующемформат:

id,appliance
1000,8
1001,1
1002,8
1003,1
1004,6
1005,1
1006,1
1007,2
1008
1009,5
1010
1011,3
1012,2
....

идентификатор соответствует имени файла каждого изображения, а столбец «appliance» содержит значения меток, назначенные каждому изображению для обучения.

Для того, чтобы передать эти данные вМодель CNN с использованием CNTK Мне нужно преобразовать данные изображения в закодированный массив с горячими объектами с функциями изображения и его метками.Ожидаемый результат, который я хотел бы получить, был бы примерно таким:

|labels 0 0 0 1 0 0 0 0 0 0 |features 0 0 0 0 ... 
                                              (15104 integers each representing a pixel)

Я полностью потерян и ценю любую помощь по этому вопросу.

РЕДАКТИРУЙТЕ ОТВЕТ НА КОММЕНТАРИЙ ДАН-МАСЕКА:

Привет, Дэн, вот скриншот ошибки:

Screenshot

, как я уже говорил, я установил переменную ID_APP_MAP_FILENAME = 'train_labels.csv, как это.Скажите, если вам нужна дополнительная информация.Спасибо

...