Я пытаюсь преобразовать изображение в изображение с серой шкалой с помощью Java. Проблема здесь в том, что когда я пытаюсь сохранить это изображение после преобразования в серый масштаб, он показывает черное изображение. Я немного не знаю об этих конверсиях изображений. Я хотел бы знать, почему он не работает, и ваши ответы помогут мне в моем проекте. Спасибо.Преобразование цветного изображения в оттенки серого показывает черное изображение в java
BufferedImage image = ImageIO.read(fileContent);
File outputFile = new File(date1);
ImageIO.write(image1, "png", outputFile);
(Это цветное изображение получается из HTML страницы, и она работает должным образом. И когда я пытаюсь отобразить/сохранить это изображение, цветное изображение видно. Но проблема возникает тогда, когда ниже код используется для преобразования цветного изображения в изображение с серой шкалой.)
BufferedImage image1 = new BufferedImage(width, height,BufferedImage.TYPE_BYTE_GRAY);
Graphics graphics = image1.getGraphics();
graphics.drawImage(image, 0, 0, null);
graphics.dispose();
File outputFile = new File(date1);
ImageIO.write(image1, "png", outputFile);
Просто интересно : работает ли ваш код, если вы не включаете преобразование? Смысл: сначала я попытаюсь заставить поток показать мне исходную картину; Когда это работает, вы можете подумать о том, чтобы потянуть ваше преобразование. – GhostCat
Изначально, когда я пытаюсь отображать/сохранять цветное изображение, я вижу изображение, после преобразования он отображает черное изображение вместо изображения с серой шкалой. – user3364490
Можете ли вы попытаться отобразить изображение в «JFrame» или аналогичном, чтобы увидеть, является ли проблема преобразованием или сохранением изображения в оттенках серого? Имеет ли значение, если вы используете другой формат выходного файла, например BMP или JPEG? – haraldK