Как мне сделать обработку изображений в Java? - PullRequest
2 голосов
/ 26 ноября 2010

Я делаю апплет, который позволяет пользователям вырезать кусок изображения и сохранить его.Для обрезки я собираюсь реализовать инструмент «волшебная палочка».Я могу сделать все это в Matlab, но у меня возникли проблемы с поиском библиотек Java.Вот несколько задач, которые мне нужно выполнить:

  • Произвольный доступ к пикселям на изображении с помощью (x, y) и возврат одного объекта (java.awt.Color, ARGB int, short [],что угодно - пока я не имею дело с каналами по отдельности)
  • Создание альфа-канала из логического [] []
  • Создание изображения N by M, инициализированного зеленым

Есть ли какие-нибудь профессионалы, которые могут мне помочь?Просто некоторые фрагменты кода на макушке вашей головы будут в порядке.

Большое спасибо,

Нил

Ответы [ 3 ]

8 голосов
/ 26 ноября 2010

Вы хотите использовать библиотеки Java2D.В частности, вы хотите использовать класс BufferedImage из библиотеки для работы с вашими изображениями.Вы можете получить доступ к отдельным пикселям и делать все, что вы указали выше.У Sun / Oracle есть хорошее руководство , которое поможет вам начать в правильном направленииВторая часть этого урока посвящена созданию альфа-канала.Да, и для доступа к отдельным пикселям вы хотите использовать класс WritableRaster.Таким образом, вы можете сделать что-то вроде этого.Надеюсь, это поможет вам.

WritableRaster imageRaster = Bufferedimg.getRaster();
//use java random generation to get a random x and y coordinate, then call this to access the pixel
imageRaster.getPixel(x, y,(int[])null);
2 голосов
/ 26 ноября 2010

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

0 голосов
/ 26 июля 2013

Marvin - это среда обработки изображений Java, которая может вам помочь. Он предоставляет алгоритмы для фильтрации, выделения признаков, морфологического анализа, трансформации, сегментации и так далее. Более того, его архитектура поддерживает обработку видео в реальном времени по тем же алгоритмам.

...