code: def _forward(self, level, inp):
      # upper branch
      up1 = inp
      up1 = self._modules["b1_" + str(level)](up1)
  
      # lower branch
      low1 = F.avg_pool2d(inp, 2, stride=2)
      low1 = self._modules["b2_" + str(level)](low1)
  
      if level > 1:
          low2 = self._forward(level - 1, low1)
      else:
          low2 = low1
          low2 = self._modules["b2_plus_" + str(level)](low2)
  
      low3 = low2
      low3 = self._modules["b3_" + str(level)](low3)
  
      up2 = F.interpolate(
          low3, scale_factor=2, mode="bicubic", align_corners=True
      )
      # up2 = F.interpolate(low3, scale_factor=2, mode='bilinear')
  
      return up1 + up2
  
file_path: pifuhd/lib/model/HGFilters.py
imports: import torch
  import torch.nn
  import torch.nn.functional
  from ..net_util import conv3x3
label_desc: Use image node_id 3 for calling the HourGlass obj's underlying member method code with example usage: obj._forward(level, inp) and returns: unknown