code: def _lraspp_mobilenetv3(
      backbone: MobileNetV3, num_classes: int
  ) -> LRASPP:
      backbone = backbone.features
      # Gather the indices of blocks which are strided. These are the locations of C1, ..., Cn-1 blocks.
      # The first and last blocks are always included because they are the C0 (conv1) and Cn.
      stage_indices = (
          [0]
          + [
              i
              for i, b in enumerate(backbone)
              if getattr(b, "_is_cn", False)
          ]
          + [len(backbone) - 1]
      )
      low_pos = stage_indices[
          -4
      ]  # use C2 here which has output_stride = 8
      high_pos = stage_indices[
          -1
      ]  # use C5 which has output_stride = 16
      low_channels = backbone[low_pos].out_channels
      high_channels = backbone[high_pos].out_channels
      backbone = IntermediateLayerGetter(
          backbone,
          return_layers={str(low_pos): "low", str(high_pos): "high"},
      )
  
      return LRASPP(backbone, low_channels, high_channels, num_classes)
  
imports: from collections import OrderedDict
  from functools import partial
  from typing import Any, Dict, Optional
  from torch import nn, Tensor
  from torch.nn import functional
  from ...transforms._presets import SemanticSegmentation
  from ...utils import _log_api_usage_once
  from .._api import register_model, Weights, WeightsEnum
  from .._meta import _VOC_CATEGORIES
  from .._utils import _ovewrite_value_param, handle_legacy_interface, IntermediateLayerGetter
  from ..mobilenetv3 import mobilenet_v3_large, MobileNet_V3_Large_Weights, MobileNetV3
label_desc: Use image node_id 1 for calling a global function with example usage: _lraspp_mobilenetv3(backbone, num_classes) and returns: LRASPP