Изображение в оттенках серого

Преобразование изображения в черно-белое с помощью Java Cloud SDK

Растровые изображения создаются ежедневно с помощью мобильных телефонов, сканеров и т. д., и они состоят из цветовой схемы RGB. Теперь с цветом RBG размер изображения большой, а с другой стороны, изображение в градациях серого является сжатым изображением, поскольку это один из типов, в котором значение каждого пикселя представляет собой одиночный образец, представляющий только одно количество света; то есть он несет только информацию об интенсивности. Кроме того, изображение в градациях серого — это черно-белое или серое монохромное изображение, полностью состоящее из оттенков серого. Контраст варьируется от черного, самой слабой интенсивности, до белого, самого сильного. Итак, в этой статье мы собираемся разработать конвертер изображений в градациях серого, чтобы изменить экспозицию ваших изображений в оттенках серого. Отрегулируйте интенсивность серого тона изображения по желанию с помощью фильтра оттенков серого, чтобы устранить отвлекающие цвета и подчеркнуть смысл вашего дизайна.

API преобразования изображений в оттенках серого

У нас есть API на основе REST, предлагающий возможности управления файлами изображений в облаке. Он также поддерживает функцию преобразования изображения в черно-белое. Поэтому для разработки конвертера изображений в градациях серого с использованием Java мы будем использовать Aspose.Imaging Cloud SDK для Java. Помимо преобразования в изображение в градациях серого, вы также можете преобразовать исходное изображение во множество других поддерживаемых форматов. Теперь, чтобы начать работу с операциями преобразования, первым шагом является добавление ссылки в проект java путем включения следующей информации в pom.xml (проект типа сборки maven).

<repositories> 
    <repository>
        <id>aspose-cloud</id>
        <name>artifact.aspose-cloud-releases</name>
        <url>https://artifact.aspose.cloud/repo</url>
    </repository>   
</repositories>

<dependencies>
    <dependency>
        <groupId>com.aspose</groupId>
        <artifactId>aspose-imaging-cloud</artifactId>
        <version>22.4</version>
    </dependency>
</dependencies>

Следующим шагом будет получение учетных данных клиента из Cloud Dashboard. Если у вас нет учетной записи в Aspose Cloud Dashboard, создайте бесплатную учетную запись, используя действующий адрес электронной почты. Теперь войдите в систему, используя только что созданную учетную запись, и найдите/создайте идентификатор клиента и секрет клиента на Aspose Cloud Dashboard.

Фотография в градациях серого с использованием Java

В этом разделе объясняется, как загрузить существующее изображение и преобразовать его в изображение в градациях серого. Пожалуйста, следуйте инструкциям, указанным ниже, чтобы выполнить требование.

  • Первым шагом является создание экземпляра ImagingApi на основе персонализированных учетных данных клиента.
  • Во-вторых, прочитайте файл JPG из локальной папки, используя объект File.
  • В-третьих, создайте экземпляр byte[] для чтения файла с помощью метода readAllBytes(…)
  • Следующим шагом является создание экземпляра CreateGrayscaledImageRequest, для которого требуется массив байтов и результирующее имя изображения в градациях серого.
  • Наконец, вызовите метод createGrayscaledImage(…) для создания фотографии в градациях серого, и результирующий файл будет сохранен в облачном хранилище.
// Получите ClientID и ClientSecret с https://dashboard.aspose.cloud/
String clientId = "7ef10407-c1b7-43bd-9603-5ea9c6db83cd";
String clientSecret = "ba7cc4dc0c0478d7b508dd8ffa029845";

// создать объект изображения
ImagingApi imageApi = new ImagingApi(clientSecret, clientId);

// загрузить файл с локального диска
File f = new File("PinClipart.png");

// прочитать содержимое изображения PNG в массив байтов
byte[] bytes = Files.readAllBytes(f.toPath());
					    
// создаем запрос на преобразование оттенков серого, в котором указываем имя результирующего файла
CreateGrayscaledImageRequest request = new CreateGrayscaledImageRequest(bytes,"grayscale.jpg",null);

// Преобразование изображения в черно-белое
imageApi.createGrayscaledImage(request);
изображение в градациях серого

Преобразование изображения в черно-белое

Изображение в оттенках серого

Результирующее фото в градациях серого

Создайте изображение в градациях серого с помощью команд cURL

Мы также можем преобразовать изображение в черно-белое с помощью команд cURL. Поскольку наши API-интерфейсы доступны только авторизованным пользователям, поэтому для доступа к API-интерфейсам с помощью команд cURL через терминал командной строки нам необходимо сначала сгенерировать токен доступа JWT (на основе учетных данных клиента), используя следующую команду.

curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=bb959721-5780-4be6-be35-ff5c3a6aa4a2&client_secret=4d84d5f6584160cbd91dba1fe145db14" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"

Теперь, когда у нас есть токен JWT, вызовите API GrayscaleImage для создания изображения в градациях серого. После создания фотографии в градациях серого полученное изображение возвращается в ответном потоке.

curl -v -X GET "https://api.aspose.cloud/v3.0/imaging/image1.jpg/grayscale" \
-H "accept: application/json" \
-H "authorization: Bearer <JWT Token>" \
-o "grayscale.jpg"

Заключение

В этой статье представлены все подробности о том, как мы можем преобразовать изображение в черно-белое с помощью Java Cloud SDK. Точно так же мы также изучили возможность выполнения требования по созданию изображения в градациях серого с помощью команд cURL. Помимо этих опций, вы можете быстро изучить функции API в веб-браузере через Справочник по API swagger. Мы настоятельно рекомендуем изучить Документацию по продукту, чтобы узнать больше о других интересных функциях, предлагаемых API.

Кроме того, все наши Cloud SDK разрабатываются по лицензии MIT, поэтому полный исходный код можно загрузить с GitHub. Наконец, если вы обнаружите какие-либо проблемы при использовании API, вы можете обратиться к нам за быстрым решением через бесплатный форум поддержки продукта.

Статьи по Теме

Пожалуйста, перейдите по следующим ссылкам, чтобы узнать больше о: