java - 在 Java 中将像素数组转换为图像

标签 java arrays image-processing colors

我用过this code将图像放入像素数组中。

  • convertTo2DWithoutUsingGetRGB 方法将图像读取为像素数组
  • 将像素数组写入图像的 writeToFile 方法

现在我想将像素数组转换为图像。但是当我转换它时,我会丢失图像数据。

  1. 初始图像大小:80Kb JPG
  2. 重复图像大小:71Kb JPG

我可以清楚地注意到两个图像之间的一些差异,Java 生成的图像有某种白噪声。

我想在不丢失单个像素数据的情况下重现图像,如何在 Java 中实现?

最佳答案

jpg 文件格式使用有损压缩算法,这意味着它生成的文件将与原始文件略有不同。您可以更改质量设置以进行更多或更少的压缩,但无法在不进行任何修改的情况下保存其原始大小。

这就是为什么不建议使用 jpg 进行图像编辑的原因。请改用无损格式,例如 PNG。

关于java - 在 Java 中将像素数组转换为图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17985940/

相关文章:

java - 具有后台和ui线程的线程池执行器与android中的异步任务?

java - XML 数字签名验证抛出 ResourceResolverException - Java 升级后

javascript - Array.from 与 for 循环遍历类似数组的对象

java - 降低java中的图像分辨率

java - 如何访问 CompletableFuture 链中所有先前的 CompletionStage 结果

java - 如何找到 2 的 n 次方。 n 的范围从 0 到 200

javascript - JavaScript 新手 : Can I pass a List into this function and have it still work?

python - 将基本数组写入txt文件?

image - 如何选择结构元素?

image-processing - 获取 ITK 中的区域最小坐标