MCPcopy Create free account
hub / github.com/MotrixLab/AiOS / TransformerDecoder_Box

Class TransformerDecoder_Box

models/aios/transformer.py:1632–2051  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1630 raise ValueError('Wrong Transformer type')
1631
1632class TransformerDecoder_Box(nn.Module):
1633 def __init__(
1634 self,
1635 decoder_layer,
1636 num_layers,
1637 norm=None,
1638 return_intermediate=False,
1639 d_model=256,
1640 query_dim=4,
1641 modulate_hw_attn=False,
1642 num_feature_levels=1,
1643 deformable_decoder=False,
1644 dec_layer_number=None, # number of queries each layer in decoder
1645 dec_layer_share=False,
1646 dec_layer_dropout_prob=None,
1647 num_box_decoder_layers=2,
1648 num_hand_face_decoder_layers=4,
1649 num_body_points=0,
1650 num_hand_points=0,
1651 num_face_points=0,
1652 num_dn=100,
1653 num_group=100):
1654 super().__init__()
1655 # pdb.set_trace()
1656 if num_layers > 0:
1657 self.layers = _get_clones(decoder_layer,
1658 num_layers,
1659 layer_share=dec_layer_share)
1660 else:
1661 self.layers = []
1662 self.num_layers = num_layers
1663 self.norm = norm
1664 self.return_intermediate = return_intermediate # True
1665 assert return_intermediate, 'support return_intermediate only'
1666 self.query_dim = query_dim # 4
1667 assert query_dim in [
1668 2, 4
1669 ], 'query_dim should be 2/4 but {}'.format(query_dim)
1670 self.num_feature_levels = num_feature_levels # 4
1671
1672 self.ref_point_head = MLP(query_dim // 2 * d_model, d_model, d_model,
1673 2) # 4//2 * 256, 256, 256, 2
1674 if not deformable_decoder:
1675 self.query_pos_sine_scale = MLP(d_model, d_model, d_model, 2)
1676 else:
1677 self.query_pos_sine_scale = None
1678
1679 self.num_body_points = 0
1680 self.num_hand_points = 0
1681 self.num_face_points = 0
1682 self.query_scale = None
1683
1684 # aios kp
1685 self.bbox_embed = None
1686 self.class_embed = None
1687
1688 self.bbox_hand_embed = None
1689 self.bbox_hand_hw_embed = None

Callers 1

__init__Method · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected