2017-01-18 8 views
1

Повторно здесь из CNTK Выпуск № 1237 по запросуСчитыватель Image/Eval/Трансформация

Использование: CNTK для ОС Windows v.2.0 Beta 5 GPU

Учебник: CNTK 201B: Hands On Labs Image Recognition

Я изменил учебник поездить и оценить B & W.png изображения. (128H, 128W, 1C) Сообщение Evaluate a saved convolutional network указывает, что для правильного оценивания изображения с моделью требуется среднее преобразование и транспонирование изображений.

18 ноября учебник был обновлен, сбросив транспонирование в eval(). Теперь я смущен. Требуется транспонирование? Что-то изменилось в CNTK, чтобы позволить ему оценивать .png изображения, загруженные с помощью PIL?

Ранее

def eval(pred_op, image_path): 
    . . . 
    image_data = np.array(Image.open(image_path), dtype=np.float32).T 
+0

Ссылаясь на: [выпуск 276 Преобразование из HWC в CHW] (https://github.com/Microsoft/CNTK/wiki/CNTK-Evaluate-Image-Transforms#layout-conversion-from-hwc-to-chw) Сообщение [Оценка сохраненной сверточной сети] (https://github.com/Microsoft/CNTK/wiki/Evaluate-a-saved-convolutional-network) используется для транспонирования: pic = np.ascontiguousarray (np.transpose (pic, (2, 0, 1))) Это не то же самое, что xT, ранее заданное в учебнике 201B, дающее разные результаты. Я подозреваю, что y.transpose (2,0,1) верен. Прокомментируйте, пожалуйста, –

+0

Итак, вы говорите, что транспозиция была там в какой-то момент и упала? –

+0

Кстати, в вашем комментарии ваш якорный текст говорит о «проблеме 276», но ссылка указывает на страницу Wiki, а не на проблему. –

ответ

1

Действительно для изображения, загруженного с PIL правильные вещи является

img.transpose(2,0,1) 

Вы можете увидеть то же самое преобразование также в художественной передачи стиля руководства.

Смежные вопросы