gpt4 book ai didi

java - 使用 javax.imageio 高效读取特定图像元数据

转载 作者:搜寻专家 更新时间:2023-11-01 03:55:44 24 4
gpt4 key购买 nike

我正在尝试使用 javax.imageio 读取 PNG 图像,然后提取位深度和颜色类型元数据。

现在我正在使用:

Iterator<ImageReader> itr = ImageIO.getImageReaders(stream);
while(itr.hasNext())
{
ImageReader reader = itr.next();
reader.setInput(stream);
IIOMetadata md = reader.getImageMetadata(0);
}

但在这一点之后我被卡住了。似乎读取元数据的唯一方法是使用 md.getAsTree 将其转换为 XML 树,但遍历整个树只是为了找到我感兴趣的两个字段似乎效率很低。

有什么方法可以有效地只获取那些字段(哈希表或类似的东西)?

最佳答案

我使用 sanselan(它现在被引入 apache commons 但还没有完成)来读取元数据。

            ImageInfo image_info = Sanselan.getImageInfo(imageFile);
int bitDepth = image_info.getBitsPerPixel();
int colorType = image_info.getColorType();

关于java - 使用 javax.imageio 高效读取特定图像元数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6734903/

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