gpt4 book ai didi

Java 读取图像 - java.lang.OutOfMemoryError

转载 作者:行者123 更新时间:2023-12-01 19:15:46 24 4
gpt4 key购买 nike

我尝试使用以下代码读取一个 10MB Jpeg 图像,但出现“线程“main”java.lang.OutOfMemoryError 中的异常:Java 堆空间”。我想知道10MB的图像是否太大而无法读取,如果是的话我是否应该增加堆空间。

增加堆空间应该是最后的选择,所以我想知道是否有其他方法可以实现这一点。我的代码附在下面;

BufferedImage image;
try {

image = ImageIO.read(new File("C:/Users/Administrator/Desktop/aa.jpg"));

printDetails(image);

} catch (IOException e) {

}

感谢帮助。

最佳答案

请注意,10MB JPEG 可以轻松解压缩为更多兆字节的未压缩图像数据。

假设您使用标准 24 位色彩空间(RGB 每个 8 位)并且图像的尺寸为 10000 x 10000 像素(考虑到 10MB 输入大小,这并不是太不现实),那么您需要更多超过 286MB 的存储空间来存储原始的、未压缩的图像数据(假设开销为零)。

这明显大于 Oracle 客户端 VM 的默认最大堆大小,因此您可能需要使用 the -Xmx argument 增加可用堆内存。 .

关于Java 读取图像 - java.lang.OutOfMemoryError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6746356/

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