SAMMaskDecoder 类keras_hub.layers.SAMMaskDecoder(
hidden_size,
num_layers,
intermediate_dim,
num_heads,
embedding_dim=256,
num_multimask_outputs=3,
iou_head_depth=3,
iou_head_hidden_dim=256,
activation="gelu",
**kwargs
)
Segment Anything Model (SAM) 的掩码解码器。
这个轻量级模块有效地将图像嵌入和一组提示嵌入映射到输出掩码。在应用 transformer 解码器之前,该层首先在提示嵌入集中插入一个学习到的输出 token 嵌入,该嵌入将在解码器的输出处使用。为简单起见,这些嵌入(不包括图像嵌入)统称为“tokens”。
图像嵌入、位置图像嵌入和 tokens 通过 transformer 解码器进行传递。运行解码器后,该层使用两个转置卷积层将更新后的图像嵌入上采样 4 倍(现在相对于输入图像缩小了 4 倍)。然后,tokens 再次关注图像嵌入,并将更新后的输出 token 嵌入传递给一个小的 3 层 MLP,该 MLP 输出一个与上采样图像嵌入的通道维度匹配的向量。
最后,通过上采样图像嵌入和 MLP 输出之间的空间逐点乘积来预测掩码。
参数
256。1 + num_multimask_outputs。默认为 3。3。256。"gelu"。