Настройка контрастности, яркости и гаммы изображения в Java

Различные характеристики изображений изменяются для улучшения их внешнего вида. Контрастность), яркость и гамма являются одними из наиболее часто используемых атрибутов для улучшения качества изображений. В различных случаях вам придется программно управлять этими атрибутами из ваших Java-приложений. Для этого в этой статье вы узнаете, как настроить контрастность, яркость и гамму изображения в Java.

Java API для настройки контрастности, яркости и гаммы изображения

Для управления контрастностью, яркостью и гаммой изображений мы будем использовать Aspose.Imaging for Java. Это мощный API для обработки изображений, который поддерживает широкий диапазон форматов изображений. Используя API, вы можете беспрепятственно редактировать изображения без написания сложного кода. Вы можете скачать JAR-файл API и добавить ссылку на него в свой проект. Кроме того, вы можете установить его в свои приложения на основе Maven, добавив следующие конфигурации в pom.xml.

Репозиторий:

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>http://repository.aspose.com/repo/</url>
</repository>

Зависимость:

<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-imaging-java</artifactId>
    <version>21.12</version>
    <classifier>jdk16</classifier>
</dependency>

Отрегулируйте контрастность изображения в Java

Разница в интенсивности пикселей изображения называется контрастом. Значение контрастности увеличивается или уменьшается для управления видимостью объектов на изображении. Увеличение контрастности на определенном уровне делает изображение более четким. Принимая во внимание, что уменьшение значения контраста делает объекты менее различимыми.

Ниже приведены шаги по настройке контрастности изображения в Java.

  • Сначала используйте класс RasterImage для загрузки изображения.
  • Затем используйте метод RasterImage.cacheData() для кэширования изображения, если это еще не сделано.
  • Используйте метод RasterImage.adjustContrast(float) для установки значения контрастности в диапазоне [-100, 100].
  • Наконец, сохраните изображение, используя метод RasterImage.save(string).

В следующем примере кода показано, как настроить контрастность изображения в Java.

// Загрузить изображение
RasterImage image = (RasterImage) com.aspose.imaging.Image.load("image.png");

// Кэшировать изображение для лучшей производительности
if (!image.isCached()) {
  image.cacheData();
}

// Отрегулируйте контраст
image.adjustContrast(30); 

// Сохранить изображение
image.save("image-updated-contrast.png");

Ниже приведено сравнение входного и выходного изображений после увеличения значения контраста.

Отрегулируйте контрастность изображений в Java

Настройка контрастности изображения

Отрегулируйте яркость изображения в Java

Яркость регулируется для увеличения или уменьшения темности или светлоты изображения. Давайте посмотрим, как изменить яркость изображения в Java.

  • Сначала используйте класс RasterImage для загрузки изображения.
  • Затем используйте метод RasterImage.cacheData() для кэширования изображения, если это еще не сделано.
  • Отрегулируйте яркость изображения с помощью метода RasterImage.adjustBrightness(int).
  • Наконец, сохраните изображение, используя метод RasterImage.save(string).

В следующем примере кода показано, как настроить яркость изображения в Java.

// Загрузить изображение
RasterImage image = (RasterImage) com.aspose.imaging.Image.load("image.png");

// Кэшировать изображение для лучшей производительности
if (!image.isCached()) {
  image.cacheData();
}

// Отрегулируйте яркость
image.adjustBrightness(70);

// Сохранить изображение
image.save("image-updated-brightness.png");

Ниже приведено сравнение входного и выходного изображений после изменения яркости.

Отрегулируйте яркость изображений в Java

Настройка яркости изображения

Отрегулируйте гамму изображения в Java

Атрибут гамма управляет соотношением красного, зеленого и синего цветов в изображении. Кроме того, это влияет на яркость изображения. Ниже приведены шаги по настройке гаммы изображения в Java.

  • Сначала используйте класс RasterImage для загрузки изображения.
  • Затем используйте метод RasterImage.cacheData() для кэширования изображения, если это еще не сделано.
  • Чтобы изменить гамму изображения, используйте метод RasterImage.adjustGamma(float, float, float).
  • Наконец, сохраните изображение с помощью метода RasterImage.save(string).

В следующем примере кода показано, как настроить гамму изображения в Java.

// Загрузить изображение
RasterImage image = (RasterImage) com.aspose.imaging.Image.load("image.png");

// Кэшировать изображение для лучшей производительности
if (!image.isCached()) {
  image.cacheData();
}

// Настроить гамму
image.adjustGamma(2.2f, 2.2f, 2.2f);

// Сохранить изображение
image.save("image-updated-gamma.png");

Ниже приведено сравнение входного и выходного изображений после изменения значения гаммы.

Отрегулируйте гамму изображений в Java

Настройка гаммы изображения

Получите бесплатную лицензию API

Вы можете получить бесплатную временную лицензию для использования Aspose.Imaging for Java без ограничений на пробную версию.

Вывод

В этой статье вы узнали, как настроить контрастность, яркость и гамму изображений в Java. Кроме того, образцы кода продемонстрировали, как изменение значений контраста, яркости и гаммы влияет на изображение. Чтобы узнать больше об API обработки изображений Java, посетите документацию. Кроме того, вы можете скачать образцы исходного кода API с GitHub. Если у вас возникнут вопросы, свяжитесь с нами на нашем форуме.

Смотрите также