这是背景和我要做的。在
设置
当直接从Python调用Tensorflow时,它工作得很好。我的问题是调用一个使用MATLAB中Tensorflow的Python模块。在
我使用pyversion
更改了MATLAB用作Python解释器的可执行文件。它指向/anaconda2/envs/TF/bin/python
。为了检查是否正确执行,我创建了以下python模块:
#myMod
def Foo(n):
return n
从MATLAB命令行,py.myMod.Foo(n)
可以正常工作。
现在我修改模块以导入tensorflow:
从MATLAB命令行,py.myMod2.Foo(n)
阻塞MATLAB。我在MATLAB窗口的左下角看到忙信号。就这样,好像卡在了一个无限循环中。在
最后,请注意:
我成功地实现了以下部分解决方案(在用found the TF environment中找到的MATLAB目录中的libstdc++.so.6
和{
#myScript
import myMod2 as m
n = 5
result = m.Foo(n)
现在,从MATLAB提示符:
name = 'myScript.py';
cmd = ['source activate TF; python ', cd, '/', name, '; source deactivate'];
[status, commandOut] = unix(cmd);
这个解决方案只是一个解决方案,因为它委托UNIX来完成这项工作。此外,它完全忽略了MATLAB和Python之间的变量传递。在
有什么想法吗?在
谢谢!在
欧共体
目前没有回答
相关问题 更多 >
编程相关推荐