Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Segmentation] Add Segment Anything Model #132

Merged
merged 30 commits into from
May 14, 2023
Merged

[Segmentation] Add Segment Anything Model #132

merged 30 commits into from
May 14, 2023

Conversation

DavidLandup0
Copy link
Owner

@DavidLandup0 DavidLandup0 commented May 14, 2023

Adds Segment Anything model in three flavors:

  • Base model (deepvision.models.SAM_B... SAM_H)
  • Promptable model(deepvision.models.PromptableSAM)
  • Automatic mask generator (deepvision.models.SAMAutoMaskGenerator)

The SAM model is implemented in PyTorch only, however, most of the components are implemented in both PyTorch and TensorFlow. Components not implemented in TensorFlow are tracked in #129, #130 and #131.

The layers and classes that do expose both a PyTorch and TensorFlow implementation are:

  • deepvision.layers.WindowUnpartitioning
  • deepvision.layers.WindowPartitioning
  • deepvision.layers.DownscalingMultiheadAttention
  • deepvision.layers.TwoWayAttentionBlock
  • deepvision.layers.TwoWayTransformerDecoder
  • deepvision.layers.RelativePositionalTransformerEncoder
  • deepvision.layers.RelativePositionalMultiheadAttention
  • deepvision.layers.RandomPositionEmbedding
  • deepvision.layers.AddDecomposedRelativePositions

All layers have identical implementations and parameter counts.

@DavidLandup0 DavidLandup0 merged commit e13bf5a into main May 14, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant