项目作者: minar09

项目描述 :
ASU-Net: Attention to Scale with U-Net for Semantic Segmentation (Implemented with TensorFlow)
高级语言: Python
项目地址: git://github.com/minar09/ASU-Net.git
创建时间: 2019-05-12T13:27:43Z
项目社区:https://github.com/minar09/ASU-Net

开源协议:MIT License

下载


ASU-Net: Attention to Scale with U-Net for Semantic Segmentation

This is a TensorFlow implementation of our ASU-Net. We train Multi-scale U-Net model first, and then the ASU-Net.
For more details, check our paper. (Link coming soon)

  1. Prerequisites
  2. Dataset
  3. Training
  4. Testing
  5. Visualizing
  6. CRF
  7. BFSCORE

Directory Structure

  1. └── __init__.py
  2. └── .gitignore
  3. └── ASUNet.py
  4. └── BatchDatasetReader.py
  5. └── bfscore.py
  6. └── CalculateUtil.py
  7. └── denseCRF.py
  8. └── EvalMetrics.py
  9. └── function_definitions.py
  10. └── LICENSE
  11. └── read_10k_data.py
  12. └── read_CFPD_data.py
  13. └── read_LIP_data.py
  14. └── README.md
  15. └── requirements.txt
  16. └── TensorflowUtils.py
  17. └── test_human.py
  18. └── UNetMSc.py

Prerequisites

  • For required packages installation, run pip install -r requirements.txt
  • pydensecrf installation in windows with conda: conda install -c conda-forge pydensecrf. For linux, use pip: pip install pydensecrf.
  • Check dataset directory in read_dataset function of corresponding data reading script, for example, for LIP dataset, check paths in read_LIP_data.py and modify as necessary.

Dataset

  • Right now, there are dataset supports for 3 datasets. Set your directory path in the corresponding dataset reader script.
  • CFPD (For preparing CFPD dataset, you can visit here: https://github.com/minar09/dataset-CFPD-windows)
  • LIP
  • 10k (Fashion)
  • If you want to use your own dataset, please create your dataset reader. (Check read_CFPD_data.py for example, on how to put directory and stuff)

Training

  • To train model simply execute python UNetMSc.py and then python ASUNet.py
  • You can add training flag as well, for example: python UNetMSc.py --mode=train and python ASUNet.py --mode=train
  • debug flag can be set during training to add information regarding activations, gradients, variables etc.
  • Set your hyper-parameters in the corresponding model script

Testing

  • To test and evaluate results use flag --mode=test, e.g., python ASUNet.py --mode=test
  • After testing and evaluation is complete, final results will be printed in the console, and the corresponding files will be saved in the “logs” directory.
  • Set your hyper-parameters in the corresponding model script

Visualizing

  • To visualize results for a random batch of images use flag --mode=visualize
  • Set your hyper-parameters in the corresponding model script

CRF

  • Running testing will apply CRF by default.
  • If you want to run standalone, run python denseCRF.py, after setting your paths.

BFSCORE