@@ -110,8 +110,14 @@ def _cfg(url='', **kwargs):
110110 'maxvit_nano_rw_256' : _cfg (
111111 url = 'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights-maxx/maxvit_nano_rw_256_sw-fb127241.pth' ,
112112 input_size = (3 , 256 , 256 ), pool_size = (8 , 8 )),
113- 'maxvit_tiny_rw_224' : _cfg (url = '' ),
114- 'maxvit_tiny_rw_256' : _cfg (url = '' , input_size = (3 , 256 , 256 ), pool_size = (8 , 8 )),
113+ 'maxvit_tiny_rw_224' : _cfg (
114+ url = 'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights-maxx/maxvit_tiny_rw_224_sw-7d0dffeb.pth' ),
115+ 'maxvit_tiny_rw_256' : _cfg (
116+ url = '' ,
117+ input_size = (3 , 256 , 256 ), pool_size = (8 , 8 )),
118+ 'maxvit_rmlp_pico_rw_256' : _cfg (
119+ url = 'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights-maxx/maxvit_rmlp_pico_rw_256_sw-8d82f2c6.pth' ,
120+ input_size = (3 , 256 , 256 ), pool_size = (8 , 8 )),
115121 'maxvit_rmlp_nano_rw_256' : _cfg (
116122 url = 'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights-maxx/maxvit_rmlp_nano_rw_256_sw-c17bb0d6.pth' ,
117123 input_size = (3 , 256 , 256 ), pool_size = (8 , 8 )),
@@ -139,7 +145,7 @@ class MaxxVitTransformerCfg:
139145 pool_type : str = 'avg2'
140146 rel_pos_type : str = 'bias'
141147 rel_pos_dim : int = 512 # for relative position types w/ MLP
142- partition_stride : int = 32
148+ partition_ratio : int = 32
143149 window_size : Optional [Tuple [int , int ]] = None
144150 grid_size : Optional [Tuple [int , int ]] = None
145151 init_values : Optional [float ] = None
@@ -495,6 +501,13 @@ def _next_cfg(
495501 stem_width = (32 , 64 ),
496502 ** _rw_max_cfg (),
497503 ),
504+ maxvit_rmlp_pico_rw_256 = MaxxVitCfg (
505+ embed_dim = (32 , 64 , 128 , 256 ),
506+ depths = (2 , 2 , 5 , 2 ),
507+ block_type = ('M' ,) * 4 ,
508+ stem_width = (24 , 32 ),
509+ ** _rw_max_cfg (rel_pos_type = 'mlp' ),
510+ ),
498511 maxvit_rmlp_nano_rw_256 = MaxxVitCfg (
499512 embed_dim = (64 , 128 , 256 , 512 ),
500513 depths = (1 , 2 , 3 , 1 ),
@@ -1458,7 +1471,7 @@ def cfg_window_size(cfg: MaxxVitTransformerCfg, img_size: Tuple[int, int]):
14581471 if cfg .window_size is not None :
14591472 assert cfg .grid_size
14601473 return cfg
1461- partition_size = img_size [0 ] // cfg .partition_stride , img_size [1 ] // cfg .partition_stride
1474+ partition_size = img_size [0 ] // cfg .partition_ratio , img_size [1 ] // cfg .partition_ratio
14621475 cfg = replace (cfg , window_size = partition_size , grid_size = partition_size )
14631476 return cfg
14641477
@@ -1698,6 +1711,11 @@ def maxvit_tiny_rw_256(pretrained=False, **kwargs):
16981711 return _create_maxxvit ('maxvit_tiny_rw_256' , pretrained = pretrained , ** kwargs )
16991712
17001713
1714+ @register_model
1715+ def maxvit_rmlp_pico_rw_256 (pretrained = False , ** kwargs ):
1716+ return _create_maxxvit ('maxvit_rmlp_pico_rw_256' , pretrained = pretrained , ** kwargs )
1717+
1718+
17011719@register_model
17021720def maxvit_rmlp_nano_rw_256 (pretrained = False , ** kwargs ):
17031721 return _create_maxxvit ('maxvit_rmlp_nano_rw_256' , pretrained = pretrained , ** kwargs )
0 commit comments