VITA-Group / GLNet

[CVPR 2019, Oral] "Collaborative Global-Local Networks for Memory-Efficient Segmentation of Ultra-High Resolution Images" by Wuyang Chen*, Ziyu Jiang*, Zhangyang Wang, Kexin Cui, and Xiaoning Qian
MIT License
347 stars 76 forks source link

Why the result of FCN-8s was better than deeplabv3? #16

Open whuwenfei opened 5 years ago

whuwenfei commented 5 years ago

Thank you for sharing your work. I'm confused that the result of FCN-8s reported in your experiment part was better than other recent proposed networks, such as deeplabv3+, pspnet and segnet. Could you pls give some more details about that? thanks.

chenwydj commented 5 years ago

We used public released deeplabv3+ implementation here. Github repo for pspnet and segnet are here.

I think different networks have the different capabilities of feature learning on different datasets, like the satellite and aerial images.

zhangbin0917 commented 5 years ago
  1. Can you share your hyperparameters for other networks (UNet, ICNet, PSPNet, SegNet, DeepLabv3+ and FCN-8s), such as batch size, lr and input size? Please give more detailed information.
  2. Did you use any data augmentation for traing other networks ?
  3. Which repo did you use for FCN-8s ?
  4. Could you offer training scripts for Inria Aerial dataset ?
chenwydj commented 5 years ago
  1. For light-weight models (UNet, ICNet) we used learning_rate = 1e-4. For other models we used learning_rate = 2e-5. Details about batch size and input size can be found in the experiment section on page 6 & 7 in our publication.
  2. We used random horizontal flipping and rotation (degree of [90, 180, 270]) for both our GLNet and other baselines.
  3. FCN-8s repo is here.
  4. Due to time limits, we probably won't be able to prepare the training script for the Inria Aerial. However, for simplicity, you could just adjust the number of classes as 2.
zhangbin0917 commented 5 years ago

I know, can you provide txt file about how to divide training sets, validation sets and test sets on Inria Aerial dataset, and pre-training models?

mzhaoshuai commented 4 years ago

Very nice work. Thank you for your endeavor. I am also interested in this phenomenon.

I see your provided DeepLabv3, it used output_stride=16 with ResNet-101. On the other hand, FCN-8s has output_stride=8 with VGG-16. The image resolution does matter. This can partly explain the difference in memory usage in Table 3.

However, ResNet-101 is more powerful than VGG-16 and DeepLabv3+ is also better than FCN-8s by a large margin on common segmentation dataset. Thus it is wired to me to see that the difference between DeepLabv3+ and FCN-8s is so large in Table 3&5&7 (and not consistent, DeepLabv3+ is better than FCN-8s in Table 5).

Could you please provide more insight about this?

Samira-Shemirani commented 2 years ago

Very nice work. Thank you for your endeavor. I am also interested in this phenomenon.

I see your provided DeepLabv3, it used output_stride=16 with ResNet-101. On the other hand, FCN-8s has output_stride=8 with VGG-16. The image resolution does matter. This can partly explain the difference in memory usage in Table 3.

However, ResNet-101 is more powerful than VGG-16 and DeepLabv3+ is also better than FCN-8s by a large margin on common segmentation dataset. Thus it is wired to me to see that the difference between DeepLabv3+ and FCN-8s is so large in Table 3&5&7 (and not consistent, DeepLabv3+ is better than FCN-8s in Table 5).

Could you please provide more insight about this?

Hi, I tried to apply the code and get the result but I couldn't. I am working with Colab and I am a fresh student. Can you help me please? I have some issues. Thank you!

Samira-Shemirani commented 2 years ago
  1. For light-weight models (UNet, ICNet) we used learning_rate = 1e-4. For other models we used learning_rate = 2e-5. Details about batch size and input size can be found in the experiment section on page 6 & 7 in our publication.
  2. We used random horizontal flipping and rotation (degree of [90, 180, 270]) for both our GLNet and other baselines.
  3. FCN-8s repo is here.
  4. Due to time limits, we probably won't be able to prepare the training script for the Inria Aerial. However, for simplicity, you could just adjust the number of classes as 2.

Hi, I tried to apply the code and get the result but I couldn't. I am working with Colab and I am a fresh student. Can you help me please? I have some issues. Thank you!