我用Python创建了一个程序,该程序可打开网络摄像头并实时识别在摄像头框架中找到的脸部。我觉得从我的IDE中运行python代码看起来不完美。当用户单击Java GUI表单中的按钮时,我想执行python代码。

提前致谢!,
阿什温

最佳答案

这样做的一种肮脏的技巧是调用Runtime.exec("python command here")并将侦听器附加到由此创建的进程。本文介绍了与该技术相关的方法:https://docs.oracle.com/javase/7/docs/api/java/lang/Runtime.html。一个粗略的示例如下所示:

button.setOnAction(event -> {
    Runtime runtime = Runtime.getRuntime();
    Process process = runtime.exec("python command");
    process.getOutputStream()  // add handling code here
});


但是,请考虑这是否是您真正想要做的。为什么不使用Python创建用户界面。流行的GTK GUI库具有Python绑定(位于https://python-gtk-3-tutorial.readthedocs.io/en/latest/的文档)。

或考虑使用Java编写人脸识别组件。如果仅从头开始编写它,可能会很困难,但是如果使用像OpenCV这样的库,则可能有Java绑定可用。

通常,如果没有特别的照顾,跨语言的交流将非常困难且容易出错,因此请仔细考虑是否需要这种精确的设置。

10-07 12:34
查看更多