РЕДАКТИРОВАТЬ : на самом деле вы можете вырезать все связанные с Swing части в своем "фрагменте Swing", поскольку вы действительно заботитесь только о части манипулирования изображениями, которая не имеет ничего общего с Swing.
Не беспокойтесь ни о чем: ваш код не многопоточный.
С Swing становится все сложнее, когда у вас есть какой-то реальный интерфейс. Интерфейс запускается из специального потока (потока обработки событий или EDT), который отличается от основного потока, в котором выполняется ваша программа. Если вы обновите какое-либо значение в своей основной программе, вам нужно быть осторожным с проблемой многопоточности, иначе ваше обновленное значение никогда не будет отображаться на экране.
Поскольку вы просто используете некоторые методы из библиотеки Swing без EDT, это похоже на использование любого метода из обычной библиотеки.