Как визуально проверять изображения до и после предварительной обработки в TF:Slim + TF:deeplab

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

TF: Deeplab использует Slim в качестве основы обучения Generell.

В ядре deeplab preprocess_utils есть собственные дополнения для предварительной обработки.

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

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

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

лучший джаинатор

1 ответ

Что не так с использованием сессии? Если предварительная обработка определена как набор операций 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 Функция строит входной конвейер, включая предварительную обработку.

Кроме того, вы можете использовать нетерпеливое исполнение.

Другие вопросы по тегам