您的位置:首页 > Web前端

ros_opencl_caffe 配置安装笔记

2018-02-07 23:48 495 查看

ros_opencl_caffe 配置安装笔记

系统环境:Ubuntu 16.04ROS版本:Kinetic遵循从上到下的原则,一步一步来即可。注意:根据ros小课堂群中“龙猫打不过橘猫”小伙伴的测试,在带有独显笔记本或者台式机的电脑上,opencl可以正常查看加速的设备信息,但是clCaffe的Demo无法运行!!!以下是来自intel官方的描述:为了在集成 GPU 上运行推理:采用 Intel® 英特尔® 锐炬® Pro 显卡或核芯显卡的处理器
无独立显卡安装 (OpenCL™ 平台要求)。如果您有一个,确保之前,完成此安装过程将在 BIOS 中禁用它。
没有安装驱动程序的其他 Gpu 安装或采用其他 Gpu 支持库
链接:https://software.intel.com/zh-cn/articles/using-inference-to-accelerate-computer-vision-applications

安装ros_opencl_caffe

https://github.com/intel/ros_opencl_caffe

安装clCaffe

https://github.com/01org/caffe/wiki/clCaffe
----------------------------
下载OpenCLSDK 4.1: http://registrationcenter-download.intel.com/akdlm/irc_nas/11396/SRB4.1_linux64.zip mkdir -p ~/ai_ws/openclSDK
解压SRB4.1_linux64.zip到openclSDK目录cd ~/ai_ws/openclSDK/
安装OpenCLSDK 4.1:
sudo rpm -Uivh --nodeps --force intel-opencl-r4.1-61547.x86_64.rpm
sudo rpm -Uivh --nodeps --force intel-opencl-devel-r4.1-61547.x86_64.rpm

注意:如果出现了:
sudo: rpm: command not found
那么就安装一下rpm包:
sudo apt-get install rpm
----------------------------
sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libhdf5-serial-dev protobuf-compiler
sudo apt-get install --no-install-recommends libboost-all-dev
sudo apt-get install libopenblas-dev liblapack-dev libatlas-base-dev
sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-devmkdir -p $HOME/code
cd $HOME/code
git clone https://github.com/viennacl/viennacl-dev.git cd viennacl-dev
mkdir build && cd build
cmake -DBUILD_TESTING=OFF -DBUILD_EXAMPLES=OFF -DCMAKE_INSTALL_PREFIX=$HOME/local -DOPENCL_LIBRARY=/opt/intel/opencl/libOpenCL.so ..
make -j4
make installcd $HOME/code
git clone https://github.com/intel/isaac cd isaac
mkdir build && cd build
cmake -DCMAKE_INSTALL_PREFIX=$HOME/local .. && make -j4
make install
----------------------------
(可选选项)
下载MKL:https://software.intel.com/en-us/mklhttp://registrationcenter-download.intel.com/akdlm/irc_nas/tec/12414/l_mkl_2018.1.163.tgz解压后根据提示安装(压缩包内有指导手册)
进入解压的文件夹执行:
./install.sh
根据提示完成安装。
最后:export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/intel/mkl/lib/intel64_lin/
----------------------------
cd $HOME/code
git clone https://github.com/01org/caffe clCaffe
cd clCaffe
git checkout inference-optimize
mkdir build && cd build
export ISAAC_HOME=$HOME/local
cmake .. -DUSE_GREENTEA=ON -DUSE_CUDA=OFF -DUSE_INTEL_SPATIAL=ON -DBUILD_docs=0 -DUSE_ISAAC=ON -DViennaCL_INCLUDE_DIR=$HOME/local/include -DBLAS=mkl -DOPENCL_LIBRARIES=/opt/intel/opencl/libOpenCL.so -DOPENCL_INCLUDE_DIRS=/opt/intel/opencl/include
make -j4
export CAFFE_ROOT=$HOME/code/clCaffe
----------------------------
cd ~/code/clCaffe/build
执行下列指令测试是否安装正常(将列出Gen Device)
./tools/caffe device_query -gpu all终端输出类似以下的内容:
I0914 10:48:49.130982   890 common.cpp:373] Total devices: 2
I0914 10:48:49.131080   890 common.cpp:374] CUDA devices: 0
I0914 10:48:49.131099   890 common.cpp:375] OpenCL devices: 2
I0914 10:48:49.131101   890 common.cpp:399] Device id:                     0
I0914 10:48:49.131103   890 common.cpp:401] Device backend:                OpenCL
I0914 10:48:49.131130   890 common.cpp:403] Backend details:               Intel(R) Corporation: OpenCL 2.0
I0914 10:48:49.131134   890 common.cpp:405] Device vendor:                 Intel(R) Corporation
I0914 10:48:49.131155   890 common.cpp:407] Name:                          Intel(R) HD Graphics
I0914 10:48:49.131157   890 common.cpp:409] Total global memory:           26878951424
I0914 10:48:49.131160   890 common.cpp:399] Device id:                     1
I0914 10:48:49.131178   890 common.cpp:401] Device backend:                OpenCL
I0914 10:48:49.131182   890 common.cpp:403] Backend details:               Intel(R) Corporation: OpenCL 2.0
I0914 10:48:49.131188   890 common.cpp:405] Device vendor:                 Intel(R) Corporation
I0914 10:48:49.131192   890 common.cpp:407] Name:                          Intel(R) Core(TM) i5-6600K CPU @ 3.50GHz
I0914 10:48:49.131283   890 common.cpp:409] Total global memory:           33609175040
----------------------------
下载并转化Yolo2 net到clCaffe可用models
sudo pip install scikit-image
sudo pip install protobuf
(sudo apt-get install python3-skimage)安装时下载速度比pip方式快。
wget https://pjreddie.com/media/files/yolo-voc.weights -O models/yolo/yolo416/yolo.weights
python models/yolo/convert_yolo_to_caffemodel.pypython tools/inference-optimize/model_fuse.py --indefinition ~/code/clCaffe/models/yolo/yolo416/yolo_deploy.prototxt --outdefinition ~/code/clCaffe/models/yolo/yolo416/fused_yolo_deploy.prototxt --inmodel ~/code/clCaffe/models/yolo/yolo416/yolo.caffemodel --outmodel ~/code/clCaffe/models/yolo/yolo416/fused_yolo.caffemodel运行Demo 10s视频流检测
build/tools/caffe-fp16.bin  test -model models/yolo/yolo416/yolo_fused_test.prototxt  -phase TEST -iterations 1000000 -weights models/yolo/yolo416/fused_yolo.caffemodel -gpu 0
----------------------------
阳光明媚 备 2018.01.21日
-------【安装clCaffe--结束】-----------------------------------创建clCaffe链接:
sudo ln -s ~/code/clCaffe /opt/clCaffe
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/clCaffe/build/lib安装USB摄像头ROS包:
sudo apt-get install ros-kinetic-usb-cam修改clCaffe的device.hpp文件:【该BUG截至2018.01.21日都存在】
定位到:
/opt/clCaffe/include/caffe/device.hpp:60:54: error: ‘extra_build_options_’ was not declared in this scope
   std::string get_extra_build_options(void) { return extra_build_options_; }
将代码std::string extra_build_options_;复制到#endif  // USE_GREENTEA的下方:#ifdef USE_GREENTEA
  bool fp16_program_ready_;
  viennacl::ocl::program fp16_ocl_program_;
  bool fp32_program_ready_;
  viennacl::ocl::program fp32_ocl_program_;
  bool fp64_program_ready_;
  viennacl::ocl::program fp64_ocl_program_;
  viennacl::ocl::program common_ocl_program_;
  std::string extra_build_options_;
#endif  // USE_GREENTEA
  std::string extra_build_options_;
};建立工作空间:
cd ~/catkin_ws/src
git clone https://github.com/intel/object_msgs git clone https://github.com/intel/ros_opencl_caffe cd ~/catkin_ws/
catkin_make
catkin_make install
source install/setup.bashrospack profilecp ~/catkin_ws/src/ros_opencl_caffe/opencl_caffe/resources/voc.txt /opt/clCaffe/data/yolo/测试Demo 调用USB摄像头做目标识别:
roslaunch opencl_caffe_launch usb_cam_viewer.launch阳光明媚 备 2018.01.21日
-------【安装ros_opencl_caffe--结束】--------------------------
参考链接:http://wiki.ros.org/IntelROSProjecthttps://github.com/intel/ros_opencl_caffehttps://github.com/01org/caffe/wiki/clCaffe
写给自己,如果以后要配置到别的电脑中,直接复制所有包,然后把build删掉,重新cmake,相当于省去了重新下载的麻烦,其他步骤依然需要执行。
阳光明媚 被 2018.02.06日
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息