Project Format

Dataset

20+1 labels

0 background
1 aeroplane
2 bicycle
3 bird
4 boat 5 bottle
6 bus
7 car
8 cat
9 chair
10 cow
11 diningtable
12 dog
13 horse
14 motorbike
15 person
16 pottedplant
17 sheep
18 sofa
19 train
20 tvmonitor

Dataset size and locations

VOC 2012 Segmentation
  • Address: /raid5/khuang-ms/data/VOC/
  • Image set: /raid5/khuang-ms/kcaffe/data/VOC/VOCdevkit/VOC2012/JPEGImages
  • Training set image name list
    • Segmentation_train.txt (only index)
    • Segmentation_image_level_train.txt (index + labels)
    • Segmentation_image_level_train_backup.txt (full address + labels)
  • Validation set image name list
    • Segmentation_val.txt (only index)
    • Segmentation_image_level_val.txt (index + labels)
    • Segmentation_image_level_val_backup.txt (full address + labels)
quantity image set
1464 Training
1449 validation
2913 Training + validation
1456 Testing
  • {label index: total number in Training + validation dataset} {1: 178, 2: 144, 3: 208, 4: 150, 5: 183, 6: 152, 7: 255, 8: 250, 9: 271, 10: 135, 11: 157, 12: 249, 13: 147, 14: 157, 15: 888, 16: 167, 17: 120, 18: 183, 19: 167, 20: 157}
SBD
quantity image set
8498 training
2857 validation
11355 training + validation
VOC_extended
  • Address: /raid5/khuang-ms/dataset/benchmark_RELEASE/dataset/img
quantity image set
10583 training

{1: 6747, 2: 2895, 3: 775, 4: 142, 5: 28} (图所含label数: 数据库中这种图的数目)

To Run

  • p.s. 未注明绝对地址的,一般都是在examples下面

1. First Network

  • first_network_files
To train

First_Network.py (First_Network.ipynb) 运行网络的py,都要放在example下面跑

solver (generated by First_Network.py)

first_network_files/solver.prototxt

Training network structure (generated by First_Network.py)

first_network_files/trainnet.prototxt

Validation network structure (generated by First_Network.py)

first_network_files/valnet.prototxt

2. Second Network

  • secondNet
To train

solve_2nd.py (First_Network.ipynb) 运行网络的py,都要放在example下面跑

solver (generated by First_Network.py)

secondNet/solver_fixed.prototxt

Training network structure (generated by First_Network.py)

secondNet/train.prototxt

Validation network structure (generated by First_Network.py)

secondNet/val.prototxt

3. Second Network -- pure FCN

  • voc-fcn32s
To train

solve.py

4. From 1st net caffemodel generate saliency map then CA

  • generate_SM_then_newest_CA.py

Generate results to saliency maps

  • convert saliency maps to the result images(0-20), which could be tested the accuracy.
  • saliency_maps_to_results.py

  • (saliency_maps_to_results_colorful.py) (This one will generate the results images in color, similar to the groud truth images)

Caffemodel

  • pure fcn trained 100,000 times: snapshot/vgg16fc_fcn_00_iter_100000.caffemodel
  • pure fcn trained 380,000 times: snapshot/vgg16fc_fcn_380000.caffemodel

Others

ground_truth_to_saliency_maps.py: transfer ground truth to corresponding saliency maps (dir: ground_truth_to_saliency_maps)

  • 1st_to_2nd_model.ipynb: use 1st net to generate the pre-trained model for 2nd.
  • 2nd_to_1st_model.ipynb: use 2nd net to generate the pre-trained model for 1st. * off_line_data_augmentation.py: do off line data augmentation for specific dataset
  • saliency_maps_to_results.py: generate results images from saliency maps which can be tested to get accuracy
  • saliency_maps_to_results_colorful.py: generate results images which is colorful so that you can check the network doing well or not.
  • scorer.py: from the trained 2nd network caffemodel to get results images (for our 2nd network)
  • scorer_fcn.py: from the trained 2nd network caffemodel to get results images (for pure fcn network)

To be done

  1. how to get the accuracy of results images by MATLAB code

  2. explain the usage of codes in my PC

  3. ...

results matching ""

    No results matching ""