Caffe+Matlab'hole
有时候,多坚持一小下下就成功了,遇到问题就频繁重装系统并不可取!放弃很容易,但坚持真的很酷!
1、安装依赖库也能出问题
命令行输入:
sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libhdf5-serial-dev protobuf-compiler
出现错误:
Could not find /boot/grub/menu.lst file. Would you like /boot/grub/menu.lst generated for you? (y/N) /usr/sbin/update-grub: 第 1094 行: read: 读错误: 0: 错误的文件描述符
run-parts: /etc/kernel/postinst.d/zz-update-grub exited with return code 1
dpkg: 处理软件包 linux-image-4.15.0-29-generic (--configure)时出错:
子进程 已安装 post-installation 脚本 返回错误状态 1
在处理时有错误发生:
linux-image-4.15.0-29-generic
E: Sub-process /usr/bin/dpkg returned an error code (1)
解决办法:
cd /boot/grub
之后:
sudo update-grub
再安装依赖库就可以了。
2、Caffe倒是很容易配置好,编译matcaffe的时候,出现问题:
make mattest时报错:
Invalid MEX-file 'caffe/matlab/+caffe/private/caffe_.mexa64':
caffe/matlab/+caffe/private/caffe_.mexa64: undefined
symbol: _ZN2cv8imencodeERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS_11_InputArrayERSt6vectorIhSaIhEERKSB_IiSaIiEE。 Error in caffe.set_mode_cpu (line 5)
caffe_('set_mode_cpu'); Error in caffe.run_tests (line 6)
caffe.set_mode_cpu();
有些说法是要执行如下命令:
export LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libopencv_highgui.so.2.4:/usr/lib/x86_64-linux-gnu/libopencv_imgproc.so.2.4:/usr/lib/x86_64-linux-gnu/libopencv_core.so.2.4:/usr/lib/x86_64-linux-gnu/libstdc++.so.6:/usr/lib/x86_64-linux-gnu/libfreetype.so.6
export LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libstdc++.so.6
但是再次运行make mattest时会有新错误:
malloc: unknown:0: assertion botched
free: called with unallocated block argument
last command: (null)
Aborting...find: ‘bash’ terminated by signal 6
虽然最后还是能运行成功,但发现在运行bash指令时无法成功执行,纠结了好久发现是这里没有彻底解决问题,解决方法是:
将 libopencv_imgproc.so.2.4, libopencv_core.so.2.4, libopencv_highgui.so.2.4三个文件拷贝到/usr/local/MATLAB/R2016b/bin/glnxa64/中
sudo mv /usr/local/MATLAB/R2016a/bin/glnxa64/libopencv_imgproc.so.2.4 /usr/local/MATLAB/R2016a/bin/glnxa64/libopencv_imgproc.so.2.4.old
sudo cp /usr/lib/x86_64-linux-gnu/libopencv_imgproc.so.2.4 /usr/local/MATLAB/R2016a/bin/glnxa64/ sudo mv /usr/local/MATLAB/R2016a/bin/glnxa64/libopencv_core.so.2.4 /usr/local/MATLAB/R2016a/bin/glnxa64/libopencv_core.so.2.4.old
sudo cp /usr/lib/x86_64-linux-gnu/libopencv_core.so.2.4 /usr/local/MATLAB/R2016a/bin/glnxa64/ sudo mv /usr/local/MATLAB/R2016a/bin/glnxa64/libopencv_highgui.so.2.4 /usr/local/MATLAB/R2016a/bin/glnxa64/libopencv_highgui.so.2.4.old
sudo cp /usr/lib/x86_64-linux-gnu/libopencv_highgui.so.2.4 /usr/local/MATLAB/R2016a/bin/glnxa64/
注:上面是我的matlab、opencv版本以及路径。
再执行:
export LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libstdc++.so.6
bash指令没有问题了,搞定。
3、caffe编译时的NVCC warning问题
在编译caffe的Mkefile.config时遇到报错
nvcc warning : The 'compute_20', 'sm_20', and 'sm_21' architectures are deprecated, and may be removed in a future release (Use -Wno-deprecated-gpu-targets to suppress warning).
原因是,Makefile中采用了CUDA的compute capability 2.0和2.1,这是两种计算能力。安装的CUDA版本是8.0,但 从CUDA 8.0开始compute capability 2.0和2.1被弃用了,所以可以将-gencode arch=compute_20,code=sm_20 和-gencode arch=compute_20,code=sm_21这两行删除即可。
Caffe+Matlab'hole的更多相关文章
- caffe matlab 借口怎么提取灰度图的 feature ? What happened if I mixed the color images with gray images together for training ?
1. caffe matlab 接口提供了提取feature的脚本,但是由于中间要对这些图像进行RGB ---> BGR 的变换,卧槽,灰度图没有三通道啊?怎么破?从上午就在纠结怎么会跑着跑着程 ...
- win7 64 旗舰版虚拟GPU-VMware下+vs2013安装caffe+matlab+python
转发请说明来处 Win7配置caffe(无GPU) 配置环境: 必须:win7 64 + vs2013 Win7 64位旗舰版要升级到service spack(因为是在vs2013下,想安装vs20 ...
- caffe matlab接口编译遇到的问题记录
今天编译的过程中遇到的问题以及查阅到的资料,记录在这里,希望可以帮到其他人. BVLC的caffe源码,如果要编译matlab的接口时,首先需要将makefile.config文件中的matlab的安 ...
- rcnn caffe matlab 配置完成 14.04 cuda 7.0
http://blog.csdn.net/real_myth/article/details/42672381 各种痛苦.实验室网速还是龟速. 莫名其妙的错误. gcc还降级到4.7,opencv 3 ...
- caffe matlab matcaffe 加载输入网络net时报错
http://blog.csdn.net/xiaojiajia007/article/details/72850247
- caffe 在window下编译(windows7, cuda8.0,matlab接口编译)
1. 环境:Windows7,Cuda8.0,显卡GTX1080,Matlab2016a,VS2013 (ps:老板说服务器要装windows系统,没办法,又要折腾一番,在VS下编译好像在cuda8. ...
- 学习笔记之 初试Caffe,Matlab接口提取feature
Caffe 提供了matlab接口,可以用于提取图像的feature.
- caffe的Matlab接口安装
参考博文:http://blog.csdn.net/thystar/article/details/50720691 0. Caffe安装及Matlab安装 1. Caffe中matcaffe配置 c ...
- Caffe使用step by step:faster-rcnn目标检测matlab代码
faster-rcnn是MSRA在物体检测最新的研究成果,该研究成果基于RCNN,fast rcnn以及SPPnet,对之前目标检测方法进行改进,faster-rcnn项目地址.首先,faster r ...
随机推荐
- JS生成 UUID的方法
方法一. function uuid() { var s = []; var hexDigits = "0123456789abcdef"; for (var i = 0; i & ...
- Linux(Ubuntu)使用日记(三)------git安装使用
1. 安装 首先,确认你的系统是否已安装git,可以通过git指令进行查看,如果没有,在命令行模式下输入sudo apt-get install git命令进行安装. 2. 配置 git confi ...
- 【坦克大战】Unity3D多人在线游戏(泰课的坦克大战--旋转的螺丝钉)
[坦克大战]Unity3D多人在线游戏 http://www.taikr.com/my/course/937 1.NetworkManager的介绍: 说明:选择固定生成时会自动寻找有StartPos ...
- Java多线程处理某个线程超时的问题
ExecutorService exec = Executors.newFixedThreadPool(4); List<Future<Integer>> futures = ...
- 从备份文件bak中识别SQL Server的版本
SQLServer 的备份文件是以.bak 为后缀的文件,如果想要通过备份文件查看数据库版本,通常的做法就是把数据库还原,但是在还原的过程,如果不是相同的数据库版本,就会导致无法还原: 在数据库中,低 ...
- 皮尔逊相关系数与余弦相似度(Pearson Correlation Coefficient & Cosine Similarity)
之前<皮尔逊相关系数(Pearson Correlation Coefficient, Pearson's r)>一文介绍了皮尔逊相关系数.那么,皮尔逊相关系数(Pearson Corre ...
- nginx的location配置root、alias用法和区别
root & alias区别root与alias主要区别在于nginx如何解释location后面的uri,这会使两者分别以不同的方式将请求映射到服务器文件上root的处理结果是:root路径 ...
- Java【第九篇】异常处理
异常概述 介绍 任何一种程序设计语言设计的程序在运行时都有可能出现错误,例如除数为0,数组下标越界,要读写的文件不存在等等.捕获错误最理想的是在编译期间,但有的错误只有在运行时才会发生.对于这些错误, ...
- PowerShell Empire使用笔记
##安装过程 git clone https://github.com/EmpireProject/Empire.git cd Empire cd setup sudo ./install.sh ## ...
- usb的hid鼠标键盘报告描述符(五)
title: usb的hid鼠标键盘报告描述符 tags: linux date: 2018/12/20/ 18:05:08 toc: true --- usb的hid鼠标键盘报告描述符 https: ...