将二进制数据从java传递给python

时间:2015-10-09 03:13:15

标签: java python subprocess jython processbuilder

我有一个用Java编写的工作程序(一个3D游戏)和一些用theano编写的Python脚本来处理图像。 我试图在游戏运行时捕获游戏的帧并在帧上运行这些脚本。 我当前的实现从帧中的每个像素抓取二进制数据,将帧保存为png图像并调用python脚本(使用ProcessBuilder)打开图像并执行其操作。 将图像写入文件然后在python中打开它是非常低效的,所以我希望能够直接将二进制数据从Java传递给Python。

如果我没有弄错,processBuilder只接受参数作为字符串,所以有谁知道如何将这个二进制数据直接传递给我的python脚本?有什么想法吗?

由于

1 个答案:

答案 0 :(得分:0)

如果启动python脚本的字符串参数的长度没有限制,您可以简单地将图像中的二进制数据编码为字符串,然后传递它。使用此方法可能遇到的唯一问题是空字符和负数。