In your code, you note that "the original paper used pool_size = 7 for cls branch, and 14 for mask branch, to save the computation time, we first use 14 as the pool_size, and then do stride=2 pooling for cls branch." (37th line in fpn.py file).
But according to your default configuration file (config.py in folder utils), the cfg.POOLING_SIZE is still 7, not 14.
And there's not a "stride=2 pooling function" in the forward function of your _FPN class, although I can find a function called RCNN_roi_feat_ds in resnet.py which might be created for it but is a convolutional function, not a pooling one and not in use.
Also there's a comment in 235th line of fpn.py, indicating that the size of the output should be 14 14. But actually it is 7 7.
In your code, you note that "the original paper used pool_size = 7 for cls branch, and 14 for mask branch, to save the computation time, we first use 14 as the pool_size, and then do stride=2 pooling for cls branch." (37th line in fpn.py file). But according to your default configuration file (config.py in folder utils), the cfg.POOLING_SIZE is still 7, not 14. And there's not a "stride=2 pooling function" in the forward function of your _FPN class, although I can find a function called RCNN_roi_feat_ds in resnet.py which might be created for it but is a convolutional function, not a pooling one and not in use. Also there's a comment in 235th line of fpn.py, indicating that the size of the output should be 14 14. But actually it is 7 7.