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
All related files
- 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
All related files
- 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
All related files
- 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
how to get the accuracy of results images by MATLAB code
explain the usage of codes in my PC
...