背景:
由于pavement-crack-detection增加了caffe的layer层,所以不能直接使用官方caffe gpu镜像。所以要使用它提供的代码重新编译caffe。
代码地址:
https://github.com/fyangneil/pavement-crack-detection
镜像制作:
本镜像基于caffe官方镜像制作。
- 安装nvidia-docker2
使用gpu的docker需要使用nvidia-docker启动镜像。
安装方法可以自行百度一下。
- 拉取 官方镜像:
docker pull bvlc/caffe:gpu
- 运行一个容器:
nvidia-docker run -tdi --runtime=nvidia --name=bvlcgpu -v /home/dockerworkdir:/workir/ bvlc/caffe:gpu
参照如下链接解决
https://mp.csdn.net/editor/html/113261786
- 安装vim:
apt-get update
apt-get install vim
- 安装openblas,官方镜像没有安装openblas。
apt install liblapack-dev liblapack3 libopenblas-base libopenblas-dev
- 拉取代码
git clone https://github.com/fyangneil/pavement-crack-detection.git
- Makefile.config中cudnn保持默认(使用cudnn场景编译会失败,暂时没找到解决方法)。
- 编译caffe
make -j8
make pycaffe
- 安装:参考train步骤准备数据集
https://github.com/fyangneil/pavement-crack-detection#evaluate-result
上面的步骤镜像已经制作完成,镜像上传到了阿里云。
拉取镜像:
docker pull registry.cn-hangzhou.aliyuncs.com/myrepo_lq/mycaffe:gpuv1
使用镜像:
- 启动一个容器
docker run -tdi --name=mycaffegpu1 mycaffe:gpuv1
- pavment源代码目录在/opt下(pavment可以放到任意目录)
/opt/gpu_pavement-crack-detection
- 按照train步骤准备数据集(data目录和5stage-vgg.caffemodel)后就可以运行
https://github.com/fyangneil/pavement-crack-detection#evaluate-result