43
43
"https://paddle-imagenet-models-name.bj.bcebos.com/dygraph/legendary_models/HRNet_W64_C_pretrained.pdparams"
44
44
}
45
45
46
+ MODEL_STAGES_PATTERN = {"HRNet" : ["st4" ]}
47
+
46
48
__all__ = list (MODEL_URLS .keys ())
47
49
48
50
@@ -368,10 +370,12 @@ class HRNet(TheseusLayer):
368
370
"""
369
371
370
372
def __init__ (self ,
373
+ stages_pattern ,
371
374
width = 18 ,
372
375
has_se = False ,
373
376
class_num = 1000 ,
374
- return_patterns = None ):
377
+ return_patterns = None ,
378
+ return_stages = None ):
375
379
super ().__init__ ()
376
380
377
381
self .width = width
@@ -460,8 +464,11 @@ def __init__(self,
460
464
2048 ,
461
465
class_num ,
462
466
weight_attr = ParamAttr (initializer = Uniform (- stdv , stdv )))
463
- if return_patterns is not None :
464
- self .update_res (return_patterns )
467
+
468
+ super ().init_res (
469
+ stages_pattern ,
470
+ return_patterns = return_patterns ,
471
+ return_stages = return_stages )
465
472
466
473
def forward (self , x ):
467
474
x = self .conv_layer1_1 (x )
@@ -517,7 +524,8 @@ def HRNet_W18_C(pretrained=False, use_ssld=False, **kwargs):
517
524
Returns:
518
525
model: nn.Layer. Specific `HRNet_W18_C` model depends on args.
519
526
"""
520
- model = HRNet (width = 18 , ** kwargs )
527
+ model = HRNet (
528
+ width = 18 , stages_pattern = MODEL_STAGES_PATTERN ["HRNet" ], ** kwargs )
521
529
_load_pretrained (pretrained , model , MODEL_URLS ["HRNet_W18_C" ], use_ssld )
522
530
return model
523
531
@@ -532,7 +540,8 @@ def HRNet_W30_C(pretrained=False, use_ssld=False, **kwargs):
532
540
Returns:
533
541
model: nn.Layer. Specific `HRNet_W30_C` model depends on args.
534
542
"""
535
- model = HRNet (width = 30 , ** kwargs )
543
+ model = HRNet (
544
+ width = 30 , stages_pattern = MODEL_STAGES_PATTERN ["HRNet" ], ** kwargs )
536
545
_load_pretrained (pretrained , model , MODEL_URLS ["HRNet_W30_C" ], use_ssld )
537
546
return model
538
547
@@ -547,7 +556,8 @@ def HRNet_W32_C(pretrained=False, use_ssld=False, **kwargs):
547
556
Returns:
548
557
model: nn.Layer. Specific `HRNet_W32_C` model depends on args.
549
558
"""
550
- model = HRNet (width = 32 , ** kwargs )
559
+ model = HRNet (
560
+ width = 32 , stages_pattern = MODEL_STAGES_PATTERN ["HRNet" ], ** kwargs )
551
561
_load_pretrained (pretrained , model , MODEL_URLS ["HRNet_W32_C" ], use_ssld )
552
562
return model
553
563
@@ -562,7 +572,8 @@ def HRNet_W40_C(pretrained=False, use_ssld=False, **kwargs):
562
572
Returns:
563
573
model: nn.Layer. Specific `HRNet_W40_C` model depends on args.
564
574
"""
565
- model = HRNet (width = 40 , ** kwargs )
575
+ model = HRNet (
576
+ width = 40 , stages_pattern = MODEL_STAGES_PATTERN ["HRNet" ], ** kwargs )
566
577
_load_pretrained (pretrained , model , MODEL_URLS ["HRNet_W40_C" ], use_ssld )
567
578
return model
568
579
@@ -577,7 +588,8 @@ def HRNet_W44_C(pretrained=False, use_ssld=False, **kwargs):
577
588
Returns:
578
589
model: nn.Layer. Specific `HRNet_W44_C` model depends on args.
579
590
"""
580
- model = HRNet (width = 44 , ** kwargs )
591
+ model = HRNet (
592
+ width = 44 , stages_pattern = MODEL_STAGES_PATTERN ["HRNet" ], ** kwargs )
581
593
_load_pretrained (pretrained , model , MODEL_URLS ["HRNet_W44_C" ], use_ssld )
582
594
return model
583
595
@@ -592,7 +604,8 @@ def HRNet_W48_C(pretrained=False, use_ssld=False, **kwargs):
592
604
Returns:
593
605
model: nn.Layer. Specific `HRNet_W48_C` model depends on args.
594
606
"""
595
- model = HRNet (width = 48 , ** kwargs )
607
+ model = HRNet (
608
+ width = 48 , stages_pattern = MODEL_STAGES_PATTERN ["HRNet" ], ** kwargs )
596
609
_load_pretrained (pretrained , model , MODEL_URLS ["HRNet_W48_C" ], use_ssld )
597
610
return model
598
611
@@ -607,7 +620,8 @@ def HRNet_W60_C(pretrained=False, use_ssld=False, **kwargs):
607
620
Returns:
608
621
model: nn.Layer. Specific `HRNet_W60_C` model depends on args.
609
622
"""
610
- model = HRNet (width = 60 , ** kwargs )
623
+ model = HRNet (
624
+ width = 60 , stages_pattern = MODEL_STAGES_PATTERN ["HRNet" ], ** kwargs )
611
625
_load_pretrained (pretrained , model , MODEL_URLS ["HRNet_W60_C" ], use_ssld )
612
626
return model
613
627
@@ -622,7 +636,8 @@ def HRNet_W64_C(pretrained=False, use_ssld=False, **kwargs):
622
636
Returns:
623
637
model: nn.Layer. Specific `HRNet_W64_C` model depends on args.
624
638
"""
625
- model = HRNet (width = 64 , ** kwargs )
639
+ model = HRNet (
640
+ width = 64 , stages_pattern = MODEL_STAGES_PATTERN ["HRNet" ], ** kwargs )
626
641
_load_pretrained (pretrained , model , MODEL_URLS ["HRNet_W64_C" ], use_ssld )
627
642
return model
628
643
@@ -637,7 +652,11 @@ def SE_HRNet_W18_C(pretrained=False, use_ssld=False, **kwargs):
637
652
Returns:
638
653
model: nn.Layer. Specific `SE_HRNet_W18_C` model depends on args.
639
654
"""
640
- model = HRNet (width = 18 , has_se = True , ** kwargs )
655
+ model = HRNet (
656
+ width = 18 ,
657
+ stages_pattern = MODEL_STAGES_PATTERN ["HRNet" ],
658
+ has_se = True ,
659
+ ** kwargs )
641
660
_load_pretrained (pretrained , model , MODEL_URLS ["SE_HRNet_W18_C" ], use_ssld )
642
661
return model
643
662
@@ -652,7 +671,11 @@ def SE_HRNet_W30_C(pretrained=False, use_ssld=False, **kwargs):
652
671
Returns:
653
672
model: nn.Layer. Specific `SE_HRNet_W30_C` model depends on args.
654
673
"""
655
- model = HRNet (width = 30 , has_se = True , ** kwargs )
674
+ model = HRNet (
675
+ width = 30 ,
676
+ stages_pattern = MODEL_STAGES_PATTERN ["HRNet" ],
677
+ has_se = True ,
678
+ ** kwargs )
656
679
_load_pretrained (pretrained , model , MODEL_URLS ["SE_HRNet_W30_C" ], use_ssld )
657
680
return model
658
681
@@ -667,7 +690,11 @@ def SE_HRNet_W32_C(pretrained=False, use_ssld=False, **kwargs):
667
690
Returns:
668
691
model: nn.Layer. Specific `SE_HRNet_W32_C` model depends on args.
669
692
"""
670
- model = HRNet (width = 32 , has_se = True , ** kwargs )
693
+ model = HRNet (
694
+ width = 32 ,
695
+ stages_pattern = MODEL_STAGES_PATTERN ["HRNet" ],
696
+ has_se = True ,
697
+ ** kwargs )
671
698
_load_pretrained (pretrained , model , MODEL_URLS ["SE_HRNet_W32_C" ], use_ssld )
672
699
return model
673
700
@@ -682,7 +709,11 @@ def SE_HRNet_W40_C(pretrained=False, use_ssld=False, **kwargs):
682
709
Returns:
683
710
model: nn.Layer. Specific `SE_HRNet_W40_C` model depends on args.
684
711
"""
685
- model = HRNet (width = 40 , has_se = True , ** kwargs )
712
+ model = HRNet (
713
+ width = 40 ,
714
+ stages_pattern = MODEL_STAGES_PATTERN ["HRNet" ],
715
+ has_se = True ,
716
+ ** kwargs )
686
717
_load_pretrained (pretrained , model , MODEL_URLS ["SE_HRNet_W40_C" ], use_ssld )
687
718
return model
688
719
@@ -697,7 +728,11 @@ def SE_HRNet_W44_C(pretrained=False, use_ssld=False, **kwargs):
697
728
Returns:
698
729
model: nn.Layer. Specific `SE_HRNet_W44_C` model depends on args.
699
730
"""
700
- model = HRNet (width = 44 , has_se = True , ** kwargs )
731
+ model = HRNet (
732
+ width = 44 ,
733
+ stages_pattern = MODEL_STAGES_PATTERN ["HRNet" ],
734
+ has_se = True ,
735
+ ** kwargs )
701
736
_load_pretrained (pretrained , model , MODEL_URLS ["SE_HRNet_W44_C" ], use_ssld )
702
737
return model
703
738
@@ -712,7 +747,11 @@ def SE_HRNet_W48_C(pretrained=False, use_ssld=False, **kwargs):
712
747
Returns:
713
748
model: nn.Layer. Specific `SE_HRNet_W48_C` model depends on args.
714
749
"""
715
- model = HRNet (width = 48 , has_se = True , ** kwargs )
750
+ model = HRNet (
751
+ width = 48 ,
752
+ stages_pattern = MODEL_STAGES_PATTERN ["HRNet" ],
753
+ has_se = True ,
754
+ ** kwargs )
716
755
_load_pretrained (pretrained , model , MODEL_URLS ["SE_HRNet_W48_C" ], use_ssld )
717
756
return model
718
757
@@ -727,7 +766,11 @@ def SE_HRNet_W60_C(pretrained=False, use_ssld=False, **kwargs):
727
766
Returns:
728
767
model: nn.Layer. Specific `SE_HRNet_W60_C` model depends on args.
729
768
"""
730
- model = HRNet (width = 60 , has_se = True , ** kwargs )
769
+ model = HRNet (
770
+ width = 60 ,
771
+ stages_pattern = MODEL_STAGES_PATTERN ["HRNet" ],
772
+ has_se = True ,
773
+ ** kwargs )
731
774
_load_pretrained (pretrained , model , MODEL_URLS ["SE_HRNet_W60_C" ], use_ssld )
732
775
return model
733
776
@@ -742,6 +785,10 @@ def SE_HRNet_W64_C(pretrained=False, use_ssld=False, **kwargs):
742
785
Returns:
743
786
model: nn.Layer. Specific `SE_HRNet_W64_C` model depends on args.
744
787
"""
745
- model = HRNet (width = 64 , has_se = True , ** kwargs )
788
+ model = HRNet (
789
+ width = 64 ,
790
+ stages_pattern = MODEL_STAGES_PATTERN ["HRNet" ],
791
+ has_se = True ,
792
+ ** kwargs )
746
793
_load_pretrained (pretrained , model , MODEL_URLS ["SE_HRNet_W64_C" ], use_ssld )
747
794
return model
0 commit comments