gpt4 book ai didi

java - 将 BufferedImage 转换为 JPG 字节数组

转载 作者:行者123 更新时间:2023-11-30 05:28:30 26 4
gpt4 key购买 nike

我正在开发一个图像处理平台,我的服务器当前正在使用 python PIL.Image 方法从客户端接受图像作为字节数组。我目前还使用 Java 作为前端,通过 FrameGrab 实用程序从视频中抓取图像帧,并将它们作为 BufferedImage 对象返回。我不明白的是我如何从这个缓冲图像对象转换为 jpg 字节数组,并且需要一些帮助。”

我找到了一个写出的例子

这是我的代码的基本部分。

            BufferedImage frame;

for (int i = 1; i < 100; i++) {
try {
frame = AWTUtil.toBufferedImage(FrameGrab.getFrameAtSec(videoFile, i * .3));


} catch (IOException ex) {
Logger.getLogger(FXMLDocumentController.class.getName()).log(Level.SEVERE, null, ex);
} catch (JCodecException ex) {
Logger.getLogger(FXMLDocumentController.class.getName()).log(Level.SEVERE, null, ex);
}
}

我的 python 服务器后端当前只是尝试使用上述库保存文件,如下所示:

        img = Image.open(io.BytesIO(data))
img.save('test.jpg')

最佳答案

简单的方法:

public static byte[] toJpegBytes(BufferedImage image) throws IOException {
ByteArrayOutputStream baos = new ByteArrayOutputStream();
ImageIO.write(image, "jpeg", baos);
return baos.toByteArray();
}

如果您想对转换进行更多控制(压缩级别等),请参阅 Setting jpg compression level with ImageIO in Java .

关于java - 将 BufferedImage 转换为 JPG 字节数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58036840/

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