本文介绍:
- nvidia-docker安装
- docker内tensorflow的配置
- 以及相关代码的演示(https://github.com/bamos/dcgan-completion.tensorflow)
1. 得到root密码安装nvidia 驱动 版本在384以上
$ sudo add-apt-repository ppa:graphics-drivers/ppa
$ sudo apt update
$ sudo apt-get install nvidia-384
$ sudo apt install nvidia-modprobe
2. 装docker-ce
https://docs.docker.com/install/linux/docker-ce/ubuntu/#prerequisites
按照Install using the repository中的步骤做完
$ sudo apt-get update
$ sudo apt-get install \
apt-transport-https \
ca-certificates \
curl \
software-properties-common
$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
$ sudo apt-key fingerprint 0EBFCD88
$ sudo add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable"
$ sudo apt-get update
$ sudo apt-get install docker-ce
3. 装nvidia-docker
https://github.com/NVIDIA/nvidia-docker
按照Ubuntu 14.04/16.04/18.04, Debian Jessie/Stretch 下的步骤做完
$ sudo docker volume ls -q -f driver=nvidia-docker | xargs -r -I{} -n1 docker ps -q -a -f volume={} | xargs -r docker rm -f
$ sudo apt-get purge -y nvidia-docker
$ curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | \
sudo apt-key add -
distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | \
sudo tee /etc/apt/sources.list.d/nvidia-docker.list
$ sudo apt-get update
$ sudo apt-get install -y nvidia-docker2
$ sudo pkill -SIGHUP dockerd
4. 装openface
$ sudo docker pull bamos/openface
5.打开开docker
这里打开的时候直接把下载下来的数据及文件夹挂载在docker上了
使用参数 -v 挂载
$ sudo docker run -p 9000:9000 -p 8000:8000 -t -i -v /home/larry/underwater_enhancing/code/dcgan-completion.tensorflow:/root/data bamos/openface /bin/bash
6.切人脸数据
先cd进入root文件夹(刚刚的数据挂载点)
$ cd ~
在运行以下命令
$ ./openface/util/align-dlib.py data/dcgan-completion.tensorflow/data/your-dataset/raw align innerEyesAndBottomLip data/dcgan-completion.tensorflow/data/your-dataset/aligned --size 64
7. 进入nvidia-docker
挂载git下来的代码文件夹到docker上
$ sudo docker run --runtime=nvidia -it -p 8888:8888 -v /home/larry/underwater_enhancing/code/dcgan_tans1/:/root/dcgan_tans1 nvidia/cuda:8.0-cudnn6-devel /bin/bash
8.安装一些剩下的包和tensorflow
安装剩下的包(在docker中)(仅1.4版本测试能正常运行)
$ apt update
$ apt install python3-pip
$ pip3 install scipy
$ pip3 install tensorflow-gpu==1.4.0
9. 运行文章中的训练代码和修复代码
如使用github上的代码需要对代码进行升级
参考:
https://www.tensorflow.org/install/migration?hl=zh-cn
训练
./train-dcgan.py --dataset ./data/your-dataset/aligned --epoch 20 &
查看
tensorboard --port 8888 --logdir ./logs
修复
./complete.py ./data/your-test-data/aligned/* --outDir outputImages
制作动图
$ cd outputImages
$ convert -delay 10 -loop 0 completed/*.png completion.gif