class_docstr: Fully convolutional DensePose head.
docstr: Apply DensePose fully convolutional head to the input features
  
  Args:
      features (tensor): input features
  Result:
      A tensor of DensePose head outputs
code: def forward(self, features: torch.Tensor):
      """
      Apply DensePose fully convolutional head to the input features
  
      Args:
          features (tensor): input features
      Result:
          A tensor of DensePose head outputs
      """
      x = features
      output = x
      for i in range(self.n_stacked_convs):
          layer_name = self._get_layer_name(i)
          x = getattr(self, layer_name)(x)
          x = F.relu(x)
          output = x
      return output
  
file_path: detectron2/projects/DensePose/densepose/modeling/roi_heads/v1convx.py
imports: import torch
  from torch import nn
  from torch.nn import functional
  from detectron2.config import CfgNode
  from detectron2.layers import Conv2d
  from ..utils import initialize_module_params
  from .registry import ROI_DENSEPOSE_HEAD_REGISTRY
label_desc: Use image node_id 2 for calling the DensePoseV1ConvXHead obj's underlying member method code with example usage: obj.forward(features) and returns: output