Caffe学习:pycaffe接口配置

来源:互联网 发布:plsql打开sql文件乱码 编辑:程序博客网 时间:2024/06/06 00:31

1、pycaffe介绍:

  • 参考链接:Interfaces

  • Caffe提供了Python的接口(pycaffe),详见caffe/python文件夹。在python代码中import caffe,可以load models(导入模型),forward and backward(前向、反向迭代), handle IO(数据输入输出),visualize networks(net可视化),instrument model solving(自定义优化方法)。所有的模型数据、计算参数都是可供读写的。

    • caffe.Net是主要接口,负责导入数据、校验数据、计算模型的。
    • caffe.Classifier用于图像分类。
    • caffe.Detector用于图像检测。
    • caffe.SGDSolver是solver接口。
    • caffe.io处理输入输出,数据预处理。
    • caffe.draw可视化net的结构。
    • Caffe blobs以numpy ndarrays的形式表示,更加方便、高效。

2、配置pycaffe:

  • 详见Ubuntu14.04 安装Caffe(仅CPU)第10点。

    • 安装依赖库:

      $ sudo apt-get install python-numpy python-scipy python-matplotlib python-sklearn python-skimage python-h5py python-protobuf python-leveldb python-networkx python-nose python-pandas python-gflags Cython ipython$ sudo apt-get install protobuf-c-compiler protobuf-compiler
      • 1
      • 2
      • 1
      • 2
    • 编译:

      $ cd ~/caffe$ make pycaffe
      • 1
      • 2
      • 1
      • 2
    • 添加~/caffe/python到$PYTHONPATH:

      $ sudo gedit /etc/profile# 添加: export PYTHONPATH=/path/to/caffe/python:$PYTHONPATH$ source /etc/profile # 使之生效
      • 1
      • 2
      • 3
      • 4
      • 5
      • 1
      • 2
      • 3
      • 4
      • 5
    • 测试是否可以引用:

      $ pythonPython 2.7.6 (default, Jun 22 2015, 17:58:13) [GCC 4.8.2] on linux2Type "help", "copyright", "credits" or "license" for more information.>>> import caffe>>> 
    • 如果失败可能需要进行如下操作:
    • import sys
    • sys.path.append('/home/usr/caffe/python')
    • import caffe
    • 如果报错error :No module named google.protobuf.internal
    • 就如下操作

      sudo chmod 777 -R  anaconda(文件夹) 改变权限 然后

      conda install protobuf

    • 今天使用,莫名其妙就提示

      Intel MKL FATAL ERROR: Cannot load libmkl_avx2.so or libmkl_def.so

      找了半天解决方法,最终还是不使用mkl吧。。。

      如参考网址http://stackoverflow.com/questions/36659453/intel-mkl-fatal-error-cannot-load-libmkl-avx2-so-or-libmkl-def-so中给出的:

      conda install nomkl numpy scipy scikit-learn numexprconda remove mkl mkl-service

      其实我这边第二句一直有问题,但是也能使用。。。

0 0
原创粉丝点击