Примените фильтр среднего значения ко всем изображениям при изменении их размера с помощью кода utf. Работа с тензорным потоком

#python #tensorflow #opencv #filter

#python #tensorflow #opencv #Фильтр

Вопрос:

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

Ответ №1:

В аддонах TensorFlow доступны различные фильтры для преобразования изображений.
Судя по коду в вашей функции синтаксического анализа, вы читаете изображение и хотите реализовать свою логику внутри функции синтаксического анализа.

Примечание: tensorflow_addons — это отдельный пакет, и вы должны установить его отдельно.

 import tensorflow_addons as tfa

img_raw = tf.io.read_file(img_path) # byte string
img = tf.io.decode_image(img_raw) # numpy array with dtype unint8
img = tf.image.convert_image_dtype(img, tf.float32) # numpy array with dtype float32
img = tf.image.resize(img, [500,500])

plt.title("TensorFlow Logo with shape {}".format(img.shape))
_ = plt.imshow(img)
  

Вывод:
Исходное изображение

Теперь применяем фильтр среднего значения с помощью tfa.image.mean_filter2d().
Вы можете посмотреть документацию здесь: Ссылка

Код:

 mean = tfa.image.mean_filter2d(img, filter_shape=11)
_ = plt.imshow(mean)
  

Вывод:
Отфильтрованное изображение

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

Комментарии:

1. я использую cv2.blur для применения фильтров среднего значения

2. Это зависит от вашего выбора. Поскольку у вас также был tensorflow в качестве одной из меток, я предоставил решения с использованием tensorflow.

3. я использовал cv2. blur для фильтров среднего значения, это правильный способ? что я записываю в своей функции prase?