Я здесь новичок, поэтому, пожалуйста, научите меня, если я не предоставил всю необходимую вам информацию :)
Мне нужно обнаруживать объекты путем обнаружения объектов. Все отлично работает для большинства моих классов объектов, но есть проблема:
У меня есть некоторые объекты, которые чувствительны к их направлению на изображении. Точнее: у меня есть объекты, которые выровнены как «вправо» или «влево» и должны быть распознаны как таковые.
Я уже знаю, что TensorFlow отражает изображения случайным образом, что разрушает мое выравнивание, потому что лево — это право, а право — лево. Я прихожу к такому выводу, потому что все остальные объекты обнаруживаются в хорошем количестве и качестве.
Поэтому я хочу «запретить» TensorFlow зеркально отображать изображения и вместо этого вращать их.
Я уже просмотрел классы Python и определил функцию «tf.image.flip_left_right», которая выполняет зеркальное отображение.
Теперь я не знаю, какой из множества файлов и мест, где вызывается этот метод, я должен изменить (ни один из скриптов не мой, они все изначально поставляются с TensorFlow!)
Вот скрипты, в которых вызывался метод:
...\models\research\object_detection\core\preprocessor.py (1 hit)
...\models\research\object_detection\core\__pycache__\preprocessor.cpython-36.pyc (1 hit)
...\models\research\object_detection\training\events.out.tfevents.1559030641.R233689 (60 hits)
...\models\research\object_detection\training\graph.pbtxt (24 hits)
...above that: 36 Hits in every model.ckpt-XXXXX.meta-file
(которые я не думаю, что они важны для этой проблемы?)
Кто-нибудь имел опыт с ним и может дать мне какой-либо совет?
Обновлено: я использую TF в версии 1.13.
У вас должен быть где-то файл .config
, который определяет увеличение, применяемое к вашим изображениям. См., например, файл это.
Просто удалите random_horizontal_flip {}
и все готово.
Не забудьте вернуться, чтобы одобрить мой ответ, если он был полезен;)
Вау, не ожидал такого быстрого ответа! Спасибо :) Я попробую и вернусь, чтобы сказать вам, сработало ли это!