0

标题可能不像我希望的那样明确,但这是我想要实现的目标:

BOOST_PYTHON_MODULE(MyPythonModule)使用 Boost.Python,我在编译后生成的 C++ 的典型宏中向 Python 公开了一组类/函数MyPythonModule.pyd。我现在可以从 C++ 调用 python 脚本并MyPythonModule毫无问题地使用(例如,创建对象、调用方法和使用我注册的转换器)。仅供参考:我指的转换器是 numpy.ndarray 到 cv::Mat 转换器。

这很好用,但是当我尝试编写一个使用 的独立 Python 脚本时MyPythonModule,我的转换器不可用。我试图将执行转换器注册的 C++ 方法公开给 Python,但没有任何运气。

如果我的解释不够清楚,请随时在评论中提问。

非常感谢您的帮助/建议。

4

1 回答 1

0

我发现了问题...我的 C++ 函数的原型被cv::Mat&作为参数,并且转换器被注册为cv::Mat没有参考。

那很愚蠢。

于 2013-11-18T21:55:42.690 回答