class_docstr: ResNet+FPN, output resolution are 1/8 and 1/2.
  
  Each block has 2 layers.
class_docstr_tok: ["ResNet+FPN",",","output","resolution","are","1\/8","and","1\/2",".","Each","block","has","2","layers","."]
code: def forward(self, x: Tensor) -> List[Tensor]:
      # ResNet Backbone
      x0 = self.relu(self.bn1(self.conv1(x)))
      x1 = self.layer1(x0)  # 1/2
      x2 = self.layer2(x1)  # 1/4
      x3 = self.layer3(x2)  # 1/8
  
      # FPN
      x3_out = self.layer3_outconv(x3)
  
      x2_out = self.layer2_outconv(x2)
      x3_out_2x = F.interpolate(
          x3_out,
          size=(x2_out.shape[2:]),
          mode="bilinear",
          align_corners=True,
      )
      x2_out = self.layer2_outconv2(x2_out + x3_out_2x)
  
      x1_out = self.layer1_outconv(x1)
      x2_out_2x = F.interpolate(
          x2_out,
          size=(x1_out.shape[2:]),
          mode="bilinear",
          align_corners=True,
      )
      x1_out = self.layer1_outconv2(x1_out + x2_out_2x)
  
      return [x3_out, x1_out]
  
file_path: kornia/kornia/feature/loftr/backbone/resnet_fpn.py
imports: from typing import Any, Dict, List, Type, Union
  import torch.nn.functional
  from torch import nn
  from kornia.core import Module, Tensor
label_desc: Use image node_id 3 for calling the ResNetFPN_8_2 obj's underlying member method code with example usage: obj.forward(x) and returns: list