Как визуально проверять изображения до и после предварительной обработки в TF: Slim + TF: deeplab - PullRequest
0 голосов
/ 23 января 2019

Я использую tenorflow https://github.com/tensorflow/models/tree/master/research/deeplab, где я хочу применить мое собственное увеличение данных .

TF: deeplab использует slim как система обучения generell.

In deeplab core preprocess_utils theres - это deeplabs own Аугментации предварительной обработки.

Все, что я хочу, - вручную (с моим собственнымчеловеческие глаза) увидеть изображение до и после предварительной обработки, чтобы получить визуальную обратную связь

Я уже пытался получить тензор -> изображение -> imshow, но он требует сеанса.На данный момент я сначала хочу спросить экспертов, возможно ли это, или даже для подсказки ....

Каждая функция, которую я непосредственно вставляю в код, вызывается только один раз ... даже если каким-то образом срабатывает на всехизображения, так как он подвергается предварительной обработке ..

best jeahinator

1 Ответ

0 голосов
/ 23 января 2019

Что не так с использованием сессии? Если предварительная обработка определена как набор операций TensorFlow, вам нужно запустить сеанс, чтобы заполнить тензоры значениями. Например:

valid_dataset = dataset([args.valid_data], args.batch_size, args.img_height, args.img_width)                                                                                                                                                       
x = train_dataset.make_one_shot_iterator().get_next()                                                                                                                                                                                                          
with tf.Session() as sess:                                                                                                                                                                                                                                        
    for i in range(50):                                                                                                                                                                                                                                           
        image = sess.run([x])[0]                                                                                                                                                                                                                            
        image = np.squeeze(image) * 255                                                                                                                                                                                                                                                                                                                                                                                                                        
        cv2.imwrite(os.path.join(args.log_dir, '{:04d}.png'.format(i)),                                                                                                                                                                                           
                    cv2.cvtColor(image, cv2.COLOR_RGB2BGR))

В этом примере функция dataset создает входной конвейер, включая предварительную обработку.

В качестве альтернативы вы можете использовать Стремительное выполнение .

...