Есть ли хорошая библиотека Scala или Java для обработки изображений? Для простых задач, таких как создание изображения с некоторыми другими, а затем создание большого пальца?
Библиотека Scala для создания образов
Ответы (5)
все они немного устарели и, возможно, неудобны, но java.awt, java.awt.image и javax.imageio имеют все необходимое для смешивания и масштабирования изображений. Вы можете найти пример кода смешивания, например. здесь
http://www.curious-creature.org/2006/09/20/new-blendings-modes-for-java2d/
вы можете найти несколько примеров масштабирования и генерации байтов изображения, например. здесь
https://sourceforge.net/projects/ssim/?source=directory
возможно, есть более новые/более простые решения, но они работают.
Взгляните на https://github.com/sksamuel/scrimage (Отказ от ответственности: я автор)
Это библиотека изображений Scala с открытым исходным кодом, которая, по сути, объединяет операции с изображениями java.awt в более удобный API.
Вы спросили, как создать эскиз, вы бы сделали что-то вроде.
val in = ...// some input stream
val out = ... // some output stream
Image(in).scale(300,400).write(out, Png)
Вы можете изменить метод масштабирования (по умолчанию бикубический) и выходной формат.
В этой библиотеке с открытым исходным кодом также есть много хороших фильтров изображений:
http://www.jhlabs.com/ip/filters/
Это не специфично для Scala, но ImgLib2 — это полнофункциональная библиотека обработки изображений Java. Он ориентирован на научное/низкоуровневое использование, поэтому может быть не так просто, как вы хотите, для того, что вы ищете, но он почти наверняка может справиться со всем, что вам может понадобиться.
Поскольку вопрос имеет тег с java-2d
, вы знаете, что можете использовать любую библиотеку Java. Быстрый Google показал этот ответ SO:
библиотека обработки изображений с открытым исходным кодом в java