Skip to content

skuley/DIS-Multi-Gpus-Training

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

41 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

IS-Net/GT-Encoder Tuning and Data Augmentation


Updates!

Checkpoints

Data Augmentation

Edged GT

  • Added BCE_Loss calculation between the output and Edged after filled GT loss calculation to aid the seperation between foreground and background.
  • Got reference from EGNet: Edge Guidance Network for Salient Object Detection which is mainly about aiding discriminate foreground better from similar color range background.

Random Blur

  • Added blurred patch on foreground and background boundary locations to all original images to increase complexity.
  • Extracted the biggest object from GT by selecting the largest contour area.
  • Number of pathces can be chosen when calling function by passing down through keyword argument
  • Area of patches will be randomly chosen.
from utils.augmentation import RandomBlur

random_blur = RandomBlur()
random_blur(image="opencv original image", mask="opencv GT mask", patches=2, patch_size=20)

I have resized DIS5K/DIS-TR into 1280x1280 and saved just to speed up training process. Thus, if this process was not fullfiled, it is necessary to resize inputs into required size [1280x1280]

  • RandomCrop 1024x1024
  • 50% Random Horizontal Flip
  • 80% Random Vertical Flip
  • 80% 90 degree Rotation
  • 80% ElasticTransform



Model Tuning

GT Encoder

  • In ISNet model, All feature maps below EN_2 stage, the size of output get smaller as stage goes on.
  • GtEncoder [Stage1, Stage2, Stage3, Stage4, Stage5, Stage6, GT]
  • GtEncoder Custom [Stage1, Stage2, Stage3, Stage4, Stage5, Stage6, GT]
  • In order to preserve detailed pixels in upsampling, I've continuously enlarged with convolutional transpose 2d to all stages until its' same size as EN_2 shape.
  • Even if GT Encoder is overfitted, during Feature Synchronization with Image Segmentation Component, stages below EN_2's preservation seemed isn't suitable for pixel wise segmentation.
  • I've used same ISNet augmentation in training gt_encoder because I've thought that it would help in training ISNet.

About

DISNet training with multi-gpus

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages