Skip to content

DeepLabCut, best practices

Gizem Ozdil edited this page Jan 6, 2023 · 2 revisions

Which network to choose?

  • Networks available: MobileNets V2, ResNets, EfficientNets
  • The difference between them is inference, training speed, and accuracy
  • Pretraining -> on ImageNet, but ModelZoo will have animal model-specific training
  • MobileNet is faster than ResNet
  • ResNet is more accurate than the others. (50 or 101) -> resnet50 is enough for most applications.
  • I am using ResNet50.

Which augmentation method to choose?

  • Cropping + scaling does a good job, but I used imaug which allows for more diverse augmentation methods.
  • So I used imaug option, and it was satisfactory.
  • You can also customize the image augmentation.

Training

  • Instead of iterating over the network, it is better to train from scratch with all the corrected outlier frames.
  • Batch size -> the larger, the better (currently 8)
  • Optimizer -> Adam, SGD -> I am using the default one (might be Adam)
  • Learning rates are reasonable, no need to change
  • Iteration number 400-500k
  • Mirror parameter is true for all networks, which helps with generalization.

See more information here and here.

Annotation

  • You can copy the previous frame's key point annotations using cmd + c
  • To delete a key point, press the scroll wheel in your mouse when the arrow is on the key point.
  • Annotate the same place all the time, if the key point is not visible, better to not annotate it
  • You cannot change the name of a key point unless you are willing to change all the annotation files you collected, so choose the key point names wisely
Clone this wiki locally