Как создать изображение 16 бит на канал в Clojure?
Я работаю с классом ImageIO для чтения и записи файлов изображений, и кажется, что файлы изображений читаются очень хорошо.Даже кажется, что 16-битные данные помещаются в правильные цветовые полосы.
Но мое приложение требует преобразования, в частности преобразования «наложения» Gimp, которое я должен применить, просматривая данные изображения для двух отдельныхизображений.Поэтому из каждого изображения я беру необработанные данные из соответствующих полос, запускаю преобразование и затем записываю результат в новое изображение.
Но я не могу найти способ заставить новое изображение принять 16-битовые значения.Я должен уменьшить результат с 16 бит на канал до 8 бит на канал, что я не хочу делать.
Я создаю свое изображение так:
(BufferedImage. 800 600 BufferedImage/TYPE_INT_RGB)
Что должно быть эквивалентно
BufferedImage anon = new BufferedImage(800, 600, BufferedImage.TYPE_INT_RGB);
Теперь, есть ли способ создать новый BufferedImage, который принимает 16 бит на канал?Или мне нужно переключиться на другую библиотеку?
Если я переключаюсь, мои требования следующие:
a) Понимание цветового пространства b) 16 бит на канал
До тех пор я буду стараться изо всех сил с 8 битами.
Обновление 2011/08/10 : хотя может пройти до двух недель, прежде чем я смогу попробовать это, может показаться, чтоJava Advanced Advanced Imaging API (JAI) делает то, что мне нужно.Он поддерживает цветовые пространства и поддерживает до 32 бит на канал / полосу.