pavement-crack-detection的caffe鏡像製作(CPU版本)

目錄

背景:

鏡像製作:

拉取鏡像:

使用鏡像:


背景:

由於pavement-crack-detection增加了caffe的layer層,所以不能直接使用官方caffe cpu鏡像。所以要使用它提供的代碼重新編譯caffe。

代碼地址:

https://github.com/fyangneil/pavement-crack-detection

 

鏡像製作:

本鏡像基於caffe官方鏡像製作。

 

 

  • 拉取 官方鏡像:

docker pull bvlc/caffe:cpu

 

  • 運行一個容器:

docker run -tdi --name=bvlccpu1  -v /home/ps/NewDisk1/HIT_workspace/lxc/qiang/dockerworkpace/workir/:/workir/ bvlc/caffe:cpu

 

  • 安裝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,取消CPU_ONLY 和OPENCV_VERSION 前面的註釋:

 

< CPU_ONLY := 1

---

> # CPU_ONLY := 1

 

< OPENCV_VERSION := 3

---

> # OPENCV_VERSION := 3

  • 修改src/caffe/layers/sigmoid_cross_entropy_loss_layer.cpp:

In src/caffe/layers/sigmoid_cross_entropy_loss_layer.cpp try removing lines:

#ifdef CPU_ONLY STUB_GPU_BACKWARD(SigmoidCrossEntropyWeightedLossLayer, Backward); #endif

it may helps. #把這一行註釋掉

  • 編譯caffe

make -j8

make pycaffe

 

  • 修改:examples/fphb/solve_fphb_crack.py,修改成使用cpu執行

caffe.set_mode_gpu()修改爲caffe.set_mode_cpu()

caffe.set_device(3) 註釋掉

 

  • 安裝:參考train步驟準備數據集

https://github.com/fyangneil/pavement-crack-detection#evaluate-result

 

 


上面的步驟鏡像已經制作完成,鏡像上傳到了阿里雲。

拉取鏡像:

docker pull registry.cn-hangzhou.aliyuncs.com/myrepo_lq/mycaffe:cpuv1


使用鏡像:

  • 啓動一個容器

docker run -tdi --name=mycaffecpu1  mycaffe:cpuv1

  • pavment源代碼目錄在/opt下(pavment可以放到任意目錄)

/opt/cpu_pavement-crack-detection

  • 按照train步驟準備數據集(data目錄和5stage-vgg.caffemodel)後就可以運行

https://github.com/fyangneil/pavement-crack-detection#evaluate-result

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章