Я программирую приложение для обработки изображений, используя javafx для gui, и я хочу показать обработанное изображение на экране. Моя программа обрабатывает изображение как трехмерный двойной массив, такой как double [3] [1080] [1920], поэтому мне нужно уменьшить цветовое пространство изображения и преобразовать удвоения в байты или (если возможно) шорты, потому что ImageView javafx не поддерживает значения с плавающей запятой или 64 бит для каждого из компонентов RGB. Я узнал, что Imageview может загружать только данные из файла или входного потока, поэтому мне нужно создать BufferedImage, заполнить его данными конверта из массива и записать кодировку BufferedImage как JPEG, BMP, PNG или GIF в поток и прочитайте этот поток с конструкцией javafx.scene.image.Image и передайте это изображение в ImageView. Жесткий способ преобразования массива в образ, я новичок хотел быть закодированным в любом формате файла, но я не нашел альтернативы этому (кроме использования javafx).
Теперь мой первый вопрос:
Метод setRGB BufferedImage принимает все цветовые компоненты, склеенные вместе как int. Как я могу правильно комбинировать их?
И мой второй вопрос:
Является ли способ yy сохранить более 8 бит для каждого компонента?
Спасибо за помощь!Создание javafx Изображение из массива данных
3
A
ответ
1
WritableImage
обеспечивает PixelFormat
обработку в byte
массив точно таким образом, используя PixelWriter
«s setPixels
с PixelFormat
набор для PixelFormat.getByteRgbInstance()
.
Смежные вопросы
- 1. Создание изображения Javafx из массива int
- 2. JavaFx - Создание анимации из массива изображений
- 3. JavaFX - Создание pdf из двоичных данных
- 4. создание массива из базы данных
- 5. создание массива из базы данных
- 6. Создание массива из $ _GET данных
- 7. JavaFX - рисование массива rgb как изображение
- 8. Создание массива из массива
- 9. Javafx loading Изображение из jar
- 10. Создание нового массива из объекта массива данных массива?
- 11. Создание линейного графика из массива объектов данных
- 12. Создание массива из базы данных MySQL
- 13. Создание многомерного массива из данных в CodeIgniter
- 14. Создание массива фотографий из таблиц базы данных
- 15. Создание строки grpah из массива объектов данных
- 16. создание массива данных из коллекции laravel
- 17. Создание массива из базы данных MySQL
- 18. Создание массива из набора данных Vb.Net
- 19. Создание массива связанных данных из divs
- 20. Создание массива из данных в collectioin
- 21. Создание двух столбцов из массива базы данных
- 22. Создание случайного массива из данных JSON
- 23. Создание строк из расщепленных массива данных
- 24. создание объектов из группы данных или массива
- 25. Создание многомерного массива из базы данных
- 26. Создание связанных структур данных из массива
- 27. jQuery: создание массива из данных объекта
- 28. Создание 2D-массива из кадра данных Pandas
- 29. Создание нового массива из массива
- 30. PHP - Создание массива из массива
Нет необходимости проходить через формат файла. Вы можете создать 'ImageView' и установить' Image' непосредственно с помощью 'setImage (...)'. Используйте ['WritableImage'] (http://docs.oracle.com/javase/8/javafx/api/javafx/scene/image/WritableImage.html) и его [' PixelWriter'] (http: // docs. oracle.com/javase/8/javafx/api/javafx/scene/image/PixelWriter.html), чтобы поместить данные в изображение. –
Использование 'WritableImage' я могу не только избежать конверсий, я могу использовать' setPixels' с 'PixelFormat.getByteRgbInstance' для обработки данных в виде массива' byte'. Это очень помогло. Спасибо! – Niclas