项目作者: PINTO0309

项目描述 :
Tensorflow implementation of SegNet Tensorflow 1.11.0 + Python (I made minor bugfixes for toimcio/SegNet-tensorflow)
高级语言: Jupyter Notebook
项目地址: git://github.com/PINTO0309/SegNet-TF.git
创建时间: 2018-10-08T15:54:58Z
项目社区:https://github.com/PINTO0309/SegNet-TF

开源协议:

下载


SegNet-Tensorflow implementation

[October 09, 2018]
I made minor bugfixes for toimcio/SegNet-tensorflow.
https://github.com/toimcio/SegNet-tensorflow
overall_accuracy



class_accuracy



results_img

Usage

1. Training

  1. $ cd ~
  2. $ git clone https://github.com/PINTO0309/SegNet-TF.git
  3. $ cd SegNet-TF
  4. $ curl -sc /tmp/cookie "https://drive.google.com/uc?export=download&id=12wakrs1SSLTL50LuSibMTBpho_JySqFk" > /dev/null
  5. $ CODE="$(awk '/_warning_/ {print $NF}' /tmp/cookie)"
  6. $ curl -Lb /tmp/cookie "https://drive.google.com/uc?export=download&confirm=${CODE}&id=12wakrs1SSLTL50LuSibMTBpho_JySqFk" -o vgg16.npy
  7. $ cd SegNet
  8. $ curl -sc /tmp/cookie "https://drive.google.com/uc?export=download&id=1FgMelph4IQOrjs3b3TfuZE9uczo-Ex_6" > /dev/null
  9. $ CODE="$(awk '/_warning_/ {print $NF}' /tmp/cookie)"
  10. $ curl -Lb /tmp/cookie "https://drive.google.com/uc?export=download&confirm=${CODE}&id=1FgMelph4IQOrjs3b3TfuZE9uczo-Ex_6" -o CamVid.tar.gz
  11. $ tar -zxvf CamVid.tar.gz
  12. $ rm CamVid.tar.gz
  13. $ curl -sc /tmp/cookie "https://drive.google.com/uc?export=download&id=1j16hiO2-9BRXKaVTGYKmrwQnN2yIkgw1" > /dev/null
  14. $ CODE="$(awk '/_warning_/ {print $NF}' /tmp/cookie)"
  15. $ curl -Lb /tmp/cookie "https://drive.google.com/uc?export=download&confirm=${CODE}&id=1j16hiO2-9BRXKaVTGYKmrwQnN2yIkgw1" -o sun3d_dataset.tar.gz
  16. $ tar -zxvf sun3d_dataset.tar.gz
  17. $ rm sun3d_dataset.tar.gz
  18. $ sudo -H pip3 install tensorflow-gpu==1.11
  19. $ cd ..
  20. $ python3
  21. >> from SegNet import SegNet
  22. >> SegNet().train()

2. Slimming weight files for deployment

A weight file after slimming is generated under the “ckpt” folder.

  1. $ python3 SegNetInfer.py

3. Freeze graph

  1. $ python3 freeze_graph.py \
  2. --input_graph=ckpt/deployfinal.pbtxt \
  3. --input_checkpoint=ckpt/deployfinal.ckpt \
  4. --output_graph=ckpt/deployfinal.pb \
  5. --output_node_names=conv_classifier/output \
  6. --input_binary=False

4. Inference Test

  1. $ python3
  2. >> from SegNet import SegNet
  3. >> SegNet().visual_results()

inferencetest

Environment

Requirement: Tensorflow-GPU 1.11.0
Ubuntu: 16.04
python: 3.5.2
CUDA: 9.0
cuDNN: 7
GPU:Geforce GTX 1070

Material

1. Check Point File (.ckpt)

  1. $ curl -sc /tmp/cookie "https://drive.google.com/uc?export=download&id=1vFa6h4SkdJ6irwUwnbSJUFf3tkH4Ina5" > /dev/null
  2. $ CODE="$(awk '/_warning_/ {print $NF}' /tmp/cookie)"
  3. $ curl -Lb /tmp/cookie "https://drive.google.com/uc?export=download&confirm=${CODE}&id=1vFa6h4SkdJ6irwUwnbSJUFf3tkH4Ina5" -o deploy.tar.gz

2. Slimmed Check Point File (.ckpt)

  1. $ curl -sc /tmp/cookie "https://drive.google.com/uc?export=download&id=1WY98-AXRbo83r3z_5LktLtdiRV0w9IA1" > /dev/null
  2. $ CODE="$(awk '/_warning_/ {print $NF}' /tmp/cookie)"
  3. $ curl -Lb /tmp/cookie "https://drive.google.com/uc?export=download&confirm=${CODE}&id=1WY98-AXRbo83r3z_5LktLtdiRV0w9IA1" -o deployfinal.tar.gz

3. Protocol Buffer Text (.pbtxt)

  1. $ curl -sc /tmp/cookie "https://drive.google.com/uc?export=download&id=1-eaByvjJAUvIdaS2Y3--KatCY0O3v24q" > /dev/null
  2. $ CODE="$(awk '/_warning_/ {print $NF}' /tmp/cookie)"
  3. $ curl -Lb /tmp/cookie "https://drive.google.com/uc?export=download&confirm=${CODE}&id=1-eaByvjJAUvIdaS2Y3--KatCY0O3v24q" -o deployfinal.pbtxt

4. Frozen graph (.pb)

  1. $ curl -sc /tmp/cookie "https://drive.google.com/uc?export=download&id=1N1xx7wo7qmmM3CVnqmYQU5dp-aFWGh6t" > /dev/null
  2. $ CODE="$(awk '/_warning_/ {print $NF}' /tmp/cookie)"
  3. $ curl -Lb /tmp/cookie "https://drive.google.com/uc?export=download&confirm=${CODE}&id=1N1xx7wo7qmmM3CVnqmYQU5dp-aFWGh6t" -o deployfinal.pb