class_docstr: Args:
      in_channels (list): number of input feature channels from backbone
      out_channel (int): number of output feature channels
      share_conv (bool): whether to share conv for different layers' reduction
      extra_stage (int): add extra stage for returning HRFPN fpn_feats
      spatial_scales (list): feature map scaling factor
class_docstr_tok: ["Args",":","in_channels","(","list",")",":","number","of","input","feature","channels","from","backbone","out_channel","(","int",")",":","number","of","output","feature","channels","share_conv","(","bool",")",":","whether","to","share","conv","for","different","layers","'","reduction","extra_stage","(","int",")",":","add","extra","stage","for","returning","HRFPN","fpn_feats","spatial_scales","(","list",")",":","feature","map","scaling","factor"]
code: def from_config(cls, cfg, input_shape):
      return {
          "in_channels": [i.channels for i in input_shape],
          "spatial_scales": [1.0 / i.stride for i in input_shape],
      }
  
file_path: PaddleDetection/ppdet/modeling/necks/hrfpn.py
imports: import paddle
  import paddle.nn.functional
  import paddle.nn
  from ppdet.core.workspace import register
  from ..shape_spec import ShapeSpec
label_desc: Use image node_id 3 for calling the HRFPN obj's underlying member method code with example usage: obj.from_config(cls, cfg, input_shape) and returns: dict