Java 将BuffereImage转换为JPG字节数组

Java 将BuffereImage转换为JPG字节数组,java,python,python-imaging-library,Java,Python,Python Imaging Library,我正在一个图像处理平台上工作,我的服务器目前正在使用pythons PIL.Image方法从客户端接受作为字节数组的图像。我目前还使用Java作为前端,使用FrameGrab实用程序从视频中抓取图像帧,并将其作为BuffereImage对象返回。我不明白的是,我是如何将这个缓冲图像对象转换为jpg字节数组的,需要一些帮助。” 我找到了一个写一篇文章的例子 这是我代码的基本部分 BufferedImage frame; for (int i = 1

我正在一个图像处理平台上工作,我的服务器目前正在使用pythons PIL.Image方法从客户端接受作为字节数组的图像。我目前还使用Java作为前端,使用FrameGrab实用程序从视频中抓取图像帧,并将其作为BuffereImage对象返回。我不明白的是,我是如何将这个缓冲图像对象转换为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);
                }
            }
简单的方法:

publicstaticbyte[]toJpegBytes(buffereImage图像)引发IOException{
ByteArrayOutputStream bas=新的ByteArrayOutputStream();
图像IO.write(图像,“jpeg”,BAS);
返回baos.toByteArray();
}

如果您希望对转换(压缩级别等)进行更多控制,请参阅。

我对代码的这一部分没有任何问题,它已经过测试并且功能齐全,我需要一种方法从BuffereImage对象获取等效格式。假设我理解正确,您应该查看和。谢谢,最后,我仔细阅读了文档,并提出了一个类似的函数。
        img = Image.open(io.BytesIO(data))
        img.save('test.jpg')