为了跑caffe-mobilenetV2。首先下载:
git clone https://github.com/weiliu89/caffe.git
记得勾选ssd,不要选中master。如果下载下来发现caffe/data没有VOC0712,那么运行:
cd caffe
git checkout ssd
如果失败的话,选中ssd,下载zip格式文件。
接下来常规的操作:
- 修改Makefile.config配置
- 修改Makefile配置
- 运行make all -j12
- 运行make test -j12
以上操作都没有出错。
当运行make runtest -j12报错:
*** Error in `.build_release/tools/caffe': munmap_chunk(): invalid pointer: 0x0000000001f0c190 ***
这个原因是我装得opencv3.2.0的问题。GTK带来的double-link problem,如果你需要3.0以上的版本,使用QT安装。不需要的话按照以下方法:
所以我选择卸载opencv3.2.0,彻底删除所有有关它的文件。
sudo apt-get autoremove opencv-doc opencv-data libopencv-dev libopencv3.2-java libopencv3.2-jni python-opencv libopencv-core3.2 libopencv-gpu3.2 libopencv-ts3.2 libopencv-photo3.2 libopencv-contrib3.2 libopencv-imgproc3.2 libopencv-superres3.2 libopencv-stitching3.2 libopencv-ocl3.2 libopencv-legacy3.2 libopencv-ml3.2 libopencv-video3.2 libopencv-videostab3.2 libopencv-objdetect3.2 libopencv-calib3d3.2
然后使用:
pkg-config opencv --libs
pkg-config opencv --modversion
显示opencv的相关信息,如果卸载干净会不显示opencv版本。
如果你还是失败的话,执行:
sudo find / -name "*opencv*" -exec rm -i {} \;
这运行时需要手动确认查找到的每条结果是否进行删除,要删除的按y即可,请千万看清楚再删删除错了可能要重装系统。
最后再使用上两条查看opencv的相关信息,应该是没有了。
当然你有其他apt-get安装的opencv的话,记得先:
sudo apt-get autoremove libopencv-dev
成功后执行:
sudo apt-get install libopencv-dev
查看版本,如果你是Ubuntu16.04,那么版本应该是:2.4.9.1
之后修改Makefile.config的配置,把
#OPENCV_VERSION := 3
重新编译,makerun的问题就解决了!