Referenz fĂŒr ultralytics/models/sam/modules/decoders.py
Hinweis
Diese Datei ist verfĂŒgbar unter https://github.com/ultralytics/ ultralytics/blob/main/ ultralytics/models/ sam/modules/decoders .py. Wenn du ein Problem entdeckst, hilf bitte mit, es zu beheben, indem du einen Pull Request đ ïž einreichst. Vielen Dank đ!
ultralytics.models.sam.modules.decoders.MaskDecoder
Basen: Module
Decodermodul zur Erzeugung von Masken und den dazugehörigen QualitÀtsbewertungen, das eine Transformatorarchitektur zur Vorhersage von Masken bei gegebenen Bildern und Prompt Embeddings.
Attribute:
Name | Typ | Beschreibung |
---|---|---|
transformer_dim |
int
|
Kanalabmessung fĂŒr das Transformatormodul. |
transformer |
Module
|
Das Transformatormodul, das fĂŒr die Maskenvorhersage verwendet wird. |
num_multimask_outputs |
int
|
Anzahl der Masken, die fĂŒr disambiguierende Masken vorhergesagt werden mĂŒssen. |
iou_token |
Embedding
|
Einbettung fĂŒr das IoU-Token. |
num_mask_tokens |
int
|
Anzahl der Masken-Token. |
mask_tokens |
Embedding
|
Einbettung fĂŒr die Masken-Token. |
output_upscaling |
Sequential
|
Neuronale Netzwerksequenz zur Hochskalierung der Ausgabe. |
output_hypernetworks_mlps |
ModuleList
|
Hypernetwork MLPs fĂŒr die Erstellung von Masken. |
iou_prediction_head |
Module
|
MLP zur Vorhersage der MaskenqualitÀt. |
Quellcode in ultralytics/models/sam/modules/decoders.py
12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 |
|
__init__(*, transformer_dim, transformer, num_multimask_outputs=3, activation=nn.GELU, iou_head_depth=3, iou_head_hidden_dim=256)
Sagt Masken fĂŒr ein Bild und prompte Einbettungen voraus, indem es eine Transformator-Architektur verwendet.
Parameter:
Name | Typ | Beschreibung | Standard |
---|---|---|---|
transformer_dim |
int
|
das KanalmaĂ des Transformatormoduls |
erforderlich |
transformer |
Module
|
der Transformator, der zur Vorhersage der Masken verwendet wird |
erforderlich |
num_multimask_outputs |
int
|
die Anzahl der Masken, die bei der Disambiguierung von Masken vorhergesagt werden sollen |
3
|
activation |
Module
|
die Art der Aktivierung, die beim Hochskalieren von Masken verwendet werden soll |
GELU
|
iou_head_depth |
int
|
die Tiefe der MLP, die zur Vorhersage der MaskenqualitÀt verwendet wird |
3
|
iou_head_hidden_dim |
int
|
die versteckte Dimension des MLP, die zur Vorhersage der MaskenqualitÀt verwendet wird |
256
|
Quellcode in ultralytics/models/sam/modules/decoders.py
forward(image_embeddings, image_pe, sparse_prompt_embeddings, dense_prompt_embeddings, multimask_output)
Sage Masken fĂŒr ein bestimmtes Bild und eine bestimmte Einbettung voraus.
Parameter:
Name | Typ | Beschreibung | Standard |
---|---|---|---|
image_embeddings |
Tensor
|
die Einbettungen aus dem Bildkodierer |
erforderlich |
image_pe |
Tensor
|
Positionskodierung mit der Form von image_embeddings |
erforderlich |
sparse_prompt_embeddings |
Tensor
|
die Einbettungen der Punkte und KĂ€stchen |
erforderlich |
dense_prompt_embeddings |
Tensor
|
die Einbettungen der MaskeneingÀnge |
erforderlich |
multimask_output |
bool
|
Ob mehrere Masken oder eine einzige Maske zurĂŒckgegeben werden soll. |
erforderlich |
Retouren:
Typ | Beschreibung |
---|---|
Tensor
|
torch.Tensor: Vorausgesagte Masken in Stapeln |
Tensor
|
torch.Tensor: Vorhersage der MaskenqualitÀt im Stapel |
Quellcode in ultralytics/models/sam/modules/decoders.py
predict_masks(image_embeddings, image_pe, sparse_prompt_embeddings, dense_prompt_embeddings)
Sagt Masken voraus.
Siehe "VorwĂ€rts" fĂŒr weitere Informationen.
Quellcode in ultralytics/models/sam/modules/decoders.py
ultralytics.models.sam.modules.decoders.MLP
Basen: Module
MLP (Multi-Layer Perceptron) Modell leicht angepasst von https://github.com/facebookresearch/MaskFormer/blob/main/mask_former/modeling/transformer/transformer_predictor.py
Quellcode in ultralytics/models/sam/modules/decoders.py
__init__(input_dim, hidden_dim, output_dim, num_layers, sigmoid_output=False)
Initialisiert das MLP-Modell (Multi-Layer Perceptron).
Parameter:
Name | Typ | Beschreibung | Standard |
---|---|---|---|
input_dim |
int
|
Die DimensionalitÀt der Eingangsmerkmale. |
erforderlich |
hidden_dim |
int
|
Die DimensionalitÀt der versteckten Schichten. |
erforderlich |
output_dim |
int
|
Die DimensionalitÀt der Ausgabeschicht. |
erforderlich |
num_layers |
int
|
Die Anzahl der versteckten Schichten. |
erforderlich |
sigmoid_output |
bool
|
Wendet eine sigmoidale Aktivierung auf die Ausgabeschicht an. Der Standardwert ist False. |
False
|
Quellcode in ultralytics/models/sam/modules/decoders.py
forward(x)
FĂŒhrt Feedforward im neuronalen Netzmodul aus und wendet die Aktivierung an.
Quellcode in ultralytics/models/sam/modules/decoders.py
Erstellt am 2023-11-12, Aktualisiert am 2024-05-18
Autoren: glenn-jocher (4), Burhan-Q (1), Laughing-q (1)