zoukankan      html  css  js  c++  java
  • Ubuntu18.04安装caffe python3.6 opencv3.2 CPU

    设置ubuntu的softwares&updates的源为国内源,这样会提高下载速度。

    如果是安装python相关库,为提高速度使用:

     pip3 install 要下载的库 -i https://国内源 

    安装caffe依赖库:

     1 # python3 modules (numpy, protobuf, skimage)
     2 sudo pip3 install numpy
     3 sudo apt-get install python3-skimage
     4 sudo apt-get install python3-protobuf
     5 
     6 # build essential
     7 sudo apt-get install build-essential cmake git pkg-config
     8 
     9 # gflags, glog, lmdb
    10 sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev
    11 
    12 # boost
    13 sudo apt-get install libboost-all-dev
    14 
    15 # hdf5
    16 sudo apt-get install libhdf5-dev
    17 
    18 # protobuf
    19 sudo apt-get install protobuf-compiler libprotobuf-dev
    20 
    21 # blas
    22 sudo apt-get install libblas-dev libcblas-dev libatlas-base-dev libopenblas-dev
    23 
    24 # leveldb
    25 sudo apt-get install libleveldb-dev
    26 
    27 # snappy
    28 sudo apt-get install libsnappy-dev

    安装opencv3.2

    下载源代码 opencv-3.2.0.zip

    1 unzip opencv-3.2.0.zip
    2 cd opencv-3.2.0
    3 mkdir release
    4 cd release
    5 cmake ..
    6 make -j4
    7 sudo make install

    安装git:

     sudo apt-get install git 

    安装caffe:

    git clone https://github.com/BVLC/caffe

    cd caffe

    cp Makefile.config.example Makefile.config 

    Makefile.config文件:

      1 ## Refer to http://caffe.berkeleyvision.org/installation.html
      2 # Contributions simplifying and improving our build system are welcome!
      3 
      4 # cuDNN acceleration switch (uncomment to build with cuDNN).
      5 # USE_CUDNN := 1
      6 
      7 # CPU-only switch (uncomment to build without GPU support).
      8 CPU_ONLY := 1
      9 
     10 # uncomment to disable IO dependencies and corresponding data layers
     11 # USE_OPENCV := 0
     12 # USE_LEVELDB := 0
     13 # USE_LMDB := 0
     14 # This code is taken from https://github.com/sh1r0/caffe-android-lib
     15 # USE_HDF5 := 0
     16 
     17 # uncomment to allow MDB_NOLOCK when reading LMDB files (only if necessary)
     18 #    You should not set this flag if you will be reading LMDBs with any
     19 #    possibility of simultaneous read and write
     20 # ALLOW_LMDB_NOLOCK := 1
     21 
     22 # Uncomment if you're using OpenCV 3
     23 OPENCV_VERSION := 3
     24 
     25 # To customize your choice of compiler, uncomment and set the following.
     26 # N.B. the default for Linux is g++ and the default for OSX is clang++
     27 # CUSTOM_CXX := g++
     28 
     29 # CUDA directory contains bin/ and lib/ directories that we need.
     30 CUDA_DIR := /usr/local/cuda
     31 # On Ubuntu 14.04, if cuda tools are installed via
     32 # "sudo apt-get install nvidia-cuda-toolkit" then use this instead:
     33 # CUDA_DIR := /usr
     34 
     35 # CUDA architecture setting: going with all of them.
     36 # For CUDA < 6.0, comment the *_50 through *_61 lines for compatibility.
     37 # For CUDA < 8.0, comment the *_60 and *_61 lines for compatibility.
     38 # For CUDA >= 9.0, comment the *_20 and *_21 lines for compatibility.
     39 CUDA_ARCH := -gencode arch=compute_20,code=sm_20 
     40         -gencode arch=compute_20,code=sm_21 
     41         -gencode arch=compute_30,code=sm_30 
     42         -gencode arch=compute_35,code=sm_35 
     43         -gencode arch=compute_50,code=sm_50 
     44         -gencode arch=compute_52,code=sm_52 
     45         -gencode arch=compute_60,code=sm_60 
     46         -gencode arch=compute_61,code=sm_61 
     47         -gencode arch=compute_61,code=compute_61
     48 
     49 # BLAS choice:
     50 # atlas for ATLAS (default)
     51 # mkl for MKL
     52 # open for OpenBlas
     53 BLAS := atlas
     54 # Custom (MKL/ATLAS/OpenBLAS) include and lib directories.
     55 # Leave commented to accept the defaults for your choice of BLAS
     56 # (which should work)!
     57 # BLAS_INCLUDE := /path/to/your/blas
     58 # BLAS_LIB := /path/to/your/blas
     59 
     60 # Homebrew puts openblas in a directory that is not on the standard search path
     61 # BLAS_INCLUDE := $(shell brew --prefix openblas)/include
     62 # BLAS_LIB := $(shell brew --prefix openblas)/lib
     63 
     64 # This is required only if you will compile the matlab interface.
     65 # MATLAB directory should contain the mex binary in /bin.
     66 # MATLAB_DIR := /usr/local
     67 # MATLAB_DIR := /Applications/MATLAB_R2012b.app
     68 
     69 # NOTE: this is required only if you will compile the python interface.
     70 # We need to be able to find Python.h and numpy/arrayobject.h.
     71 #PYTHON_INCLUDE := /usr/include/python2.7 
     72 #        /usr/lib/python2.7/dist-packages/numpy/core/include
     73 # Anaconda Python distribution is quite popular. Include path:
     74 # Verify anaconda location, sometimes it's in root.
     75 # ANACONDA_HOME := $(HOME)/anaconda
     76 # PYTHON_INCLUDE := $(ANACONDA_HOME)/include 
     77         # $(ANACONDA_HOME)/include/python2.7 
     78         # $(ANACONDA_HOME)/lib/python2.7/site-packages/numpy/core/include
     79 
     80 # Uncomment to use Python 3 (default is Python 2)
     81 PYTHON_LIBRARIES := boost_python3 python3.6m
     82 PYTHON_INCLUDE := /usr/include/python3.6m 
     83 #                 /usr/lib/python3.6/dist-packages/numpy/core/include
     84 
     85 # We need to be able to find libpythonX.X.so or .dylib.
     86 PYTHON_LIB := /usr/lib
     87 # PYTHON_LIB := $(ANACONDA_HOME)/lib
     88 
     89 # Homebrew installs numpy in a non standard path (keg only)
     90 # PYTHON_INCLUDE += $(dir $(shell python -c 'import numpy.core; print(numpy.core.__file__)'))/include
     91 # PYTHON_LIB += $(shell brew --prefix numpy)/lib
     92 
     93 # Uncomment to support layers written in Python (will link against Python libs)
     94 WITH_PYTHON_LAYER := 1
     95 
     96 # Whatever else you find you need goes here.
     97 INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include /usr/include/hdf5/serial
     98 LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib /usr/lib/x86_64-linux-gnu/hdf5/serial
     99 
    100 # If Homebrew is installed at a non standard location (for example your home directory) and you use it for general dependencies
    101 # INCLUDE_DIRS += $(shell brew --prefix)/include
    102 # LIBRARY_DIRS += $(shell brew --prefix)/lib
    103 
    104 # NCCL acceleration switch (uncomment to build with NCCL)
    105 # https://github.com/NVIDIA/nccl (last tested version: v1.2.3-1+cuda8.0)
    106 # USE_NCCL := 1
    107 
    108 # Uncomment to use `pkg-config` to specify OpenCV library paths.
    109 # (Usually not necessary -- OpenCV libraries are normally installed in one of the above $LIBRARY_DIRS.)
    110 # USE_PKG_CONFIG := 1
    111 
    112 # N.B. both build and distribute dirs are cleared on `make clean`
    113 BUILD_DIR := build
    114 DISTRIBUTE_DIR := distribute
    115 
    116 # Uncomment for debugging. Does not work on OSX due to https://github.com/BVLC/caffe/issues/171
    117 # DEBUG := 1
    118 
    119 # The ID of the GPU that 'make runtest' will use to run unit tests.
    120 TEST_GPUID := 0
    121 
    122 # enable pretty build (comment to see full commands)
    123 Q ?= @
    View Code

    编译并测试:

    1 make all -j4
    2 make test
    3 make runtest 
  • 相关阅读:
    详解Javascript匿名函数的使用 转载自IT EYE Blog
    漂亮、免费和响应式HTML5网站模板 转
    Truth, Equality and JavaScript
    Ember.js 示例
    UX Pin 一款在线界面设计网站
    关于工资的三个秘密
    Semantic Versioning 如何进行版本管理
    CSSS CSS幻灯片
    oracle 导入数据报600错误
    Android 初步Android文件目录介绍
  • 原文地址:https://www.cnblogs.com/juluwangshier/p/11788741.html
Copyright © 2011-2022 走看看