2

我已阅读文章“Ubuntu 安装 -- 使用 64 位处理器的 Ubuntu 14.04 指南”。来自 Github 网站(https://github.com/tiangolo/caffe/blob/ubuntu-tutorial-b/docs/install_apt2.md)。现在,我打开 IPython 来测试 PyCaffe 是否正常工作。我输入“ipython”命令,进入ipython页面。

然后,我输入命令“import caffe”,但收到以下警告:

/root/code/caffe-master/python/caffe/pycaffe.py:13:RuntimeWarning: to-Python 转换器,用于 boost::shared_ptr > 已注册;第二种转换方法忽略。从 ._caffe 导入网络、SGDSolver、NesterovSolver、AdaGradSolver、\

/root/code/caffe-master/python/caffe/pycaffe.py:13: RuntimeWarning: to-Python converter for boost::shared_ptr > 已经注册;第二种转换方法忽略。从 ._caffe 导入网络、SGDSolver、NesterovSolver、AdaGradSolver、\

/root/code/caffe-master/python/caffe/pycaffe.py:13: RuntimeWarning: to-Python converter for boost::shared_ptr > 已经注册;第二种转换方法忽略。从 ._caffe 导入网络、SGDSolver、NesterovSolver、AdaGradSolver、\

请您帮忙给我一些解决它的建议吗?

4

2 回答 2

2

我找到了这个:

https://groups.google.com/forum/#!topic/caffe-users/C_air48cISU

声称这是一个非错误,由不匹配的 Boost 版本引起。您可以放心地忽略它。他们已承诺清除警告(在某些时候尚未指定)

于 2016-03-06T23:58:27.090 回答
1

您可以编辑 /caffe/python/caffe/_caffe.cpp 。有四个地方需要改变,像这样

bp::register_ptr_to_python<shared_ptr<Layer<Dtype> > >();

const boost::python::type_info cinfo = boost::python::type_id<shared_ptr<Blob<Dtype> > >();
const boost::python::converter::registration* creg = boost::python::converter::registry::query(cinfo);
      if (creg == NULL)
      {
         bp::register_ptr_to_python<shared_ptr<Layer<Dtype> > >();
      }
      else if ((*creg).m_to_python == NULL) {
         bp::register_ptr_to_python<shared_ptr<Layer<Dtype> > >();
      }

然后编译使用'make pycaffe',就可以了。

于 2016-03-25T16:49:59.947 回答