gpt4 book ai didi

java - 将灰度值从 .csv 转换为 BufferedImage

转载 作者:行者123 更新时间:2023-11-30 06:23:11 25 4
gpt4 key购买 nike

我正在尝试使用 BufferedImage 将包含灰度值的 .csv 文件转换为图像。csv 最初被读入 pixArray[],其中所有值都是 double 。

我正在尝试使用 BufferedImage 通过代码创建 100x100px 输出图像

                BufferedImage image = new BufferedImage(width,height,BufferedImage.
TYPE_BYTE_GRAY);
for(int x = 0; x < width; x++)
{
for(int y = 0; y < height; y++)
{
image.setRGB(x, y, (int)Math.round(pixArray[y]));
}
}

File file_out = new File("output.png");
try {
ImageIO.write(image, "png", file_out);
} catch (IOException e) {
e.printStackTrace();
}

但我的输出只是一个 100x100 的黑色方 block 。

我尝试了 TYPE_BYTE_GRAY 的替代方案,以及 outout 的 png 格式,但没有成功,但找不到产生此错误的原因。

最佳答案

应该是

int g = (int)Math.round(pixArray[y]); 
image.setRGB(x,y,new Color(g,g,g).getRGB());

您当前的代码正在执行的操作是将 alpha 设置为像素值,但将颜色分量保留为零。

关于java - 将灰度值从 .csv 转换为 BufferedImage,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47719357/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com