我有一个C++ tensorflow::Tensor
其内容,我想在Python中访问。tensorflow ::张量到蟒蛇张量或numpy.nd_array
我都在寻找能够在tensorflow::Tensor
转换为任何合理的PyObject
(也不要紧,现在阉这是一个tf.Tensor
或numpy.nd_array
)功能通过Tensorflow C++ Documentation看去。
东张西望虽然Tensorflow代码后,我发现以下线索:
有一个在tensorflow/python/client/tf_session_helper.cc
定义的方法TF_Tensor_to_PyObject(TF_Tensor* Tensor, PyObject** out_array)
。但是,这是在一个隐藏的Bazel包中定义的,而且在一个匿名的C++名称空间中定义。修改Tensorflow本身似乎很不直观(我将不得不修改Bazel BUILD文件,.h和.cc文件),并编译我自己的Tensorflow以使用此方法。
这种方法的另一个问题是,TF_Tensor
!= tensorflow::Tensor
。 TF_Tensor
在Tensorflow的C-Api中定义,并且在那里,该转换也不适用于公共用途(例如:此包的外部)。
有没有人知道更好的方法来做到这一点? tensorflow::Tensor
到PyObject
有没有在搜索时找到的现有实现?